2. Linked List
好题
Reverse Linked List
public ListNode reverseList(ListNode head) {
ListNode prev = null;
while (head != null) {
ListNode next= head.next;
head.next = prev;
prev = head;
head = next;
}
return prev;
}
//recursive
public ListNode reverseListRecursive(ListNode head) {
if (head == null || head.next == null) return head;
ListNode newHead = reverseListRecursive(head.next);
head.next.next = head;
head.next = null;
return newHead;
}Remove duplicates from sorted list II
Remove Nth Node from End of List
Swap Nodes in Pairs
Reverse Nodes in k-Group
Reorder List
Insert into a sorted circular linked list
Flatten a Multilevel doubly linked list
LRU Cache
Doubly list + HashMap
Single list + HashMap
Last updated