public class SortedLinkedList{ private SortedLinkedListNode head; public SortedLinkedList(){ head = null; } public void add (int m){ if (head == null || head.num >= m){ SortedLinkedListNode temp = head; head = new SortedLinkedListNode(m); head.next = temp; } else{ SortedLinkedListNode prev = head, curr = head.next; while (curr != null && curr.num < m){ prev = curr; curr = curr.next; } SortedLinkedListNode newNode = new SortedLinkedListNode(m); prev.next = newNode; newNode.next = curr; } } public String toString(){ String ret = "[ "; SortedLinkedListNode curr = head; while (curr != null){ ret += curr.num + " "; curr = curr.next; } ret += "]"; return ret; } private class SortedLinkedListNode{ public int num; public SortedLinkedListNode next; //constructor: new node public SortedLinkedListNode(int n){ num = n; next = null; } } }