Sakshi Singh
1 min readDec 28, 2018

HACKERRANK SOLUTION: Insert a node at the head of a linked list

import java.io.*;

import java.math.*;

import java.security.*;

import java.text.*;

import java.util.*;

import java.util.concurrent.*;

import java.util.regex.*;

public class Solution {

static class SinglyLinkedListNode {

public int data;

public SinglyLinkedListNode next;

public SinglyLinkedListNode(int nodeData) {

this.data = nodeData;

this.next = null;

}

}

static class SinglyLinkedList {

public SinglyLinkedListNode head;

public SinglyLinkedListNode tail;

public SinglyLinkedList() {

this.head = null;

this.tail = null;

}

}

public static void printSinglyLinkedList(SinglyLinkedListNode node, String sep, BufferedWriter bufferedWriter) throws IOException {

while (node != null) {

bufferedWriter.write(String.valueOf(node.data));

node = node.next;

if (node != null) {

bufferedWriter.write(sep);

}

}

}

*****************************************************************

static SinglyLinkedListNode insertNodeAtHead(SinglyLinkedListNode llist, int data) {

SinglyLinkedListNode n=new SinglyLinkedListNode(data);

n.data=data;

n.next=null;

if(llist==null)

return n;

n.next=llist;

llist=n;

return llist;

}

*****************************************************************

private static final Scanner scanner = new Scanner(System.in);

public static void main(String[] args) throws IOException {

BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv(“OUTPUT_PATH”)));

SinglyLinkedList llist = new SinglyLinkedList();

int llistCount = scanner.nextInt();

scanner.skip(“(\r\n|[\n\r\u2028\u2029\u0085])?”);

for (int i = 0; i < llistCount; i++) {

int llistItem = scanner.nextInt();

scanner.skip(“(\r\n|[\n\r\u2028\u2029\u0085])?”);

SinglyLinkedListNode llist_head = insertNodeAtHead(llist.head, llistItem);

llist.head = llist_head;

}

printSinglyLinkedList(llist.head, “\n”, bufferedWriter);

bufferedWriter.newLine();

bufferedWriter.close();

scanner.close();

}

}

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Sakshi Singh
Sakshi Singh

No responses yet

Write a response