输入一个链表,反转链表后,输出链表的所有元素。
来源:互联网 发布:酷派手机怎么设置网络 编辑:程序博客网 时间:2024/05/29 02:47
输入一个链表,反转链表后,输出链表的所有元素。
方法1:将单链表储存为数组,然后按照数组的索引逆序进行反转。
方法2:使用三个指针遍历单链表,逐个链接点进行反转。
方法3:从第2个节点到第N个节点,依次逐节点插入到第1个节点(head节点)之后,最后将第一个节点挪到新表的表尾。
public
class
Solution {
public
ListNode ReverseList(ListNode head) {
if
(head ==
null
)
return
null
;
//记录当前节点的前一个节点
ListNode prenode =
null
;
//记录当前节点的后一个节点
ListNode aftnode = head.next;
//当前节点
ListNode innode = head;
//将头节点改为尾节点
head.next =
null
;
prenode = head;
//指针指向下一个节点
head = aftnode;
while
(head !=
null
){
//1.记录该节点的后一个节点
//2.将该节点的next指向前一个节点
//3.将该节点的指针后移
//4.修改该移动后的pre节点。
aftnode = head.next;
head.next = prenode;
prenode = head;
head = aftnode;
}
return
prenode;
}
}
0 0
- 剑指offer:输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- java 输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。就地逆转,头插法
- java实现输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 剑指offer--输入一个链表,反转链表后,输出链表的所有元素。
- 输入一个链表,反转链表后,输出链表的所有元素。
- 反转链表后,输出链表的所有元素。
- 定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。
- 输出反转链表
- 链表的建立、输出、非递归反转、递归反转
- 链表指定区间元素的反转
- 给定一个链表,要求每隔k个元素反转
- Android 6.0 运行时权限处理完全解析
- Centos 升级glibc
- Hbase数据库简单理解
- JAVAone 总结
- POJ3190
- 输入一个链表,反转链表后,输出链表的所有元素。
- 哈理工OJ 1569 比赛排名(排序和字符串处理)
- qt中获取文件路径和文件名、后缀名
- DICOM格式的图像在MATLAB中处理
- java编程思想第四版中net.mindview.util的jar包导入
- 文本中字符个数统计
- hrbust 1853 哈理工oj 1853 幼稚园的数学Ⅰ【Biginteger】
- Android视频推流直播学习【三】
- 第二次上机报告2-项目一