РЕШЕНИЕ HACKERRANK: вставьте узел в начало связанного списка
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 {
статический класс SinglyLinkedListNode {
общедоступные данные типа int;
public SinglyLinkedListNode следующий;
public SinglyLinkedListNode (int nodeData) {
this.data = nodeData;
this.next = null;
}
}
статический класс SinglyLinkedList {
public SinglyLinkedListNode head;
public SinglyLinkedListNode tail;
public SinglyLinkedList () {
this.head = null;
this.tail = null;
}
}
public static void printSinglyLinkedList (узел SinglyLinkedListNode, String sep, BufferedWriter bufferedWriter) выдает исключение IOException {
while (node! = null) {
bufferedWriter.write (String.valueOf (node.data));
node = node.next;
if (node! = null) {
bufferedWriter.write (сеп);
}
}
}
*****************************************************************
статический SinglyLinkedListNode insertNodeAtHead (SinglyLinkedListNode llist, int data) {
SinglyLinkedListNode n = новый SinglyLinkedListNode (данные);
n.data = data;
n.next = null;
если (llist == null)
return n;
n.next = llist;
llist = n;
return llist;
}
*****************************************************************
частный статический финальный сканер сканера = новый сканер (System.in);
public static void main (String [] args) выбрасывает IOException {
BufferedWriter bufferedWriter = новый BufferedWriter (новый FileWriter (System.getenv («OUTPUT_PATH»)));
SinglyLinkedList llist = новый 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 ();
}
}