【題目】
一個環形單鏈表從頭節點head開始不降序,同時由最后的節點指回頭節點。給定這樣一個環形單鏈表的頭節點head和一個整數num,請生成節點值為num的新節點,并插入到這個環形鏈表中,保證調整后的鏈表依然有序
?
1 public Node insertNum(Node head, int num) 2 { 3 Node node = new Node(num); 4 if(head == null) 5 { 6 node.next = node; 7 return node; 8 } 9 10 Node pre = head; 11 Node cur = head.next; 12 while(cur != head) 13 { 14 if(pre.value <= num && cur.value >= num) 15 { 16 break; 17 } 18 pre = cur; 19 cur = cur.next; 20 } 21 pre.next = node; 22 node.next = cur; 23 return head.value < num ? head : node; 24 }
?
?
來源:左程云老師《程序員代碼面試指南》