首页 > 编程语言 > 详细

不会的两个常见算法

时间:2021-01-27 14:47:50      阅读:26      评论:0      收藏:0      [点我收藏+]

单向链表的反转

public class LinkedNode {
Integer id;
LinkedNode next;

public LinkedNode(Integer id) {
this.id = id;
}
}
//创建链表
LinkedNode node1 = new LinkedNode(1);
LinkedNode node2 = new LinkedNode(2);
LinkedNode node3 = new LinkedNode(3);

//递归该方法
public LinkedNode reverseList(LinkedNode node) {
// 如果为空链表或者只有一个节点的链表则不需要处理
if (node == null || node.next == null) {
return node;
}
// 递归直到找到尾结点
LinkedNode newHead = reverseList(node.next);
// 尾节点反指
node.next.next = node;
// 当前节点指向null节点
node.next = null;
return newHead;
}







不会的两个常见算法

原文:https://www.cnblogs.com/liunx1109/p/14334106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!