206. Reverse Linked List(java)
来源:互联网 发布:数据库面试宝典 编辑:程序博客网 时间:2024/05/20 07:32
206. Reverse Linked List
遍历反转法
遍历反转法是从前往后依次反转当前结点的指针域的指向,使其指向前一个节点。
基本思路:将当前节点cur的下一个节点 cur.next缓存到temp后,然后令当前节点指针指向前一结点pre。在更改反转当前结点指针域前,要把指针域用tmp临时保存,以便于下一次使用。
pre:前一结点
cur: 当前结点
tmp: 临时结点,用于保存当前结点的指针域(即下一结点)
pre:前一结点
cur: 当前结点
tmp: 临时结点,用于保存当前结点的指针域(即下一结点)
Java链表节点定义:
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */反转代码如下
public class Solution { public ListNode reverseList(ListNode head) { if(head==null){ return head;} ListNode pre = head; ListNode cur = head.next;// 当前结点 ListNode tmp;// 临时节点,用于保存当前结点的指针域(即下一结点) while(cur!=null){ tmp = cur.next; cur.next = pre;//令指针域的指向前一节点 //下一个节点 pre=cur; cur=tmp; } //将原链表头节点的指针域置为null,返回新链表的头结点,即原链表的尾结点 head.next=null; return pre; }}
阅读全文
0 0
- 206. Reverse Linked List(java)
- 206. Reverse Linked List(Java)
- (java)Reverse Linked List
- Leetcode: 206. Reverse Linked List(JAVA)
- LeetCode-206. Reverse Linked List (Java)
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- 206. Reverse Linked List
- ionic局部刷新
- 【C++】关键字const
- Android系统架构 五层结构
- 今年暑假不AC(贪心)
- PDO常用方法详解
- 206. Reverse Linked List(java)
- XMLHttpRequest cannot load的解决方法
- 全排列的C/C++实现
- JS--第八天
- java 泛型
- LeetCode-26-Remove Duplicates from Sorted Array(消除已排序数组中的重复元素)
- Nginx之location,rewrite,反向代理及负载均衡
- 数据结构——字典(JavaScript)
- Quick-cocos2dx,中关于table条件排序