第一步.
第二步.
同时我们需要让头指针向后走,但由于内存中的节点如果没有指向就会被清除所以需要一个节点来指向当前的头结点
最后再让head的next指向pre就完成了第一次翻转
最后的代码实现(java)
public static Node ReverseIteratively(Node head){
Node pre = null; //pre用来保存先前结点
Node next = null; //next用来做临时变量
while (head != null) {
next = head.next;
head.next = pre;
pre = head;
head = next;
}
return pre;
}