反转链表(java版)
来源:互联网 发布:ubuntu 16.04搭建lnmp 编辑:程序博客网 时间:2024/06/05 15:18
【题目描述】输入一个链表,反转链表后,输出链表的所有元素。
【解题思路1】
//1. 只反转链表的值,并不是真正的把结点交换。
//2. 从第一个结点开始,找关于中间轴对称的结点,然后交换它们的值。
public class Solution { public ListNode ReverseList(ListNode head) { if(head == null || head.next == null){ return head; } int temp = 0; ListNode end = head, inx = head, flag = null; while(inx.next != flag){ end = inx; while(end.next != flag){ end = end.next; } temp = end.val; end.val = inx.val; inx.val = temp; inx = inx.next; flag = end; } return head; }}
【解题思路2】
//1. 反转结点。
//2. 从头结点开始,记录前一个结点pre,然后把当前结点的next指针指向pre。循环遍历,直到最后一个结点返回。
public ListNode ReverseList(ListNode head) { ListNode pre = null; ListNode next = null; while (head != null) { next = head.next; head.next = pre; pre = head; head = next; } return pre;}
阅读全文
0 0
- 反转链表(java版)
- 反转链表Java
- java反转链表
- java链表反转
- 反转链表 java
- Java 反转链表
- java反转链表
- 反转链表java
- 反转链表(不改变指针)JAVA版
- Java链表反转(复习.复习)
- 单向链表反转(java)
- 反转链表(Java实现)
- java反转链表实现
- java之链表反转
- java实现链表反转
- Java 反转单向链表
- java 实现反转链表
- java实现链表反转
- git学习笔记
- 我们一起走,寻找自己的答案
- Merge Two Binary Trees
- JavaMVC分层模式
- redis 学习笔记整理
- 反转链表(java版)
- Offical explanation of service in android
- 飞测历史分享,目录整理篇
- 每天一个Linux命令(41):ps命令
- Unity中的通用对象池
- Unity中的通用对象池
- JMeter 日志和错误信息
- eclipse启动时报错: failed to load the JNI shared library
- QuartZ和Spring整合