链表特点:
涉及到索引角标的增删改查操作,都需要先查到元素,然后才可以做其他操作,这种操作的复杂度是O(N);
链表一般会定义头尾指针,头尾的增删很方便,很适合用于实现队列(只有首尾操作)。
链表由于可以头插入和尾插入等等,所以实现逆序很方便,只需要遍历并进行依次头插入即可实现反转链表,也可以通过反转指针实现。
1 public void reverse() { 2 // temp 和next的位置像斐波那契一样在依次向后移动 3 Node temp = first; 4 last = first; 5 Node next = temp.getNext(); 6 for(int i = 0; i < size - 1; i++) { 7 Node nextNext = next.getNext(); 8 next.setNext(temp); 9 temp = next; 10 next = nextNext; 11 } 12 first = temp; 13 last.setNext(null); 14 }
反转指针
时间: 2024-10-08 19:31:30