链表操作

1.Remove Duplicates from Sorted List
2. Remove Duplicates from Sorted List II

 如下循环一圈
 ListNode temp = head.next;
 head.next = prev;
 prev = head;
 head = temp;

3.Reverse Linked List
4.Reverse Linked List II
Dummy Node使用哨兵节点放在最前面用于解决head节点不确定的问题
5.Partition List
6.Sort-List
7.Reorder List a.找中点 b.倒置后半部分c.按照奇偶合并

快慢指针的使用

  • Find the Middle of Linked List
  • Remove Nth Node From End of List 另一种方法,让fast指针先走N步,然后两个指针同时走,当fast指针走到尾部时,slow慢指针就是带删除的
  • Linked List Cycle

8.Copy List with Random Pointer
9.Convert Sorted List to Binary Search Tree
10.Remove Linked List Elements
11.Merge k Sorted Lists

你可能感兴趣的:(链表操作)