那么只要使用一个空的 临时队列 offer()最新的元素,然后将 原队列的数据 offer()到临时队列,这样,临时队列中的顺序就是最后进来的反而成了最先进来的,也就是说临时队列 pop() 出去的就是最新的元素,那么再互换 临时队列 和原队列的指针,就得到了正确的队列;
先将指针 p ,g 同时移动到 left前节点 再把p指针后移一位到left节点 以p节点为中间点,将p后边的节点头插到p节点和g节点之间;
使两个指针同时从头结点出发,快指针每一次循环都往下走一步,慢指针隔一次走一步,成环后由于两个指针会打转,两个指针步长一致,快的一定会追上慢的,并且在同一个节点上;
class Solution { public ListNode reverseList(ListNode head) {ListNode temp = null;ListNode res =