算法 (八)链表相关:反转单向链表、打印两个有序链表的公共部分

参考博文:

  1. 理解单链表的反转(java实现)
  2. 单链表反转的两种实现(Java)

1、反转单向链表

有两种方法,递归遍历,具体实现过程请看上面俩个博文中的图表结合下面代码的注释

代码实现:

package cn.nupt;

/**
 * @Description: 反转单向和双向链表
 *
 * @author PizAn
 * @Email  pizan@foxmail.com
 * @date 2019年2月18日 下午12:47:20
 * 
 */
public class ReverseList {
   

	// 构建链表结构,这里是静态内部类
	public static class Node {
   
		int value;
		Node next;

		// 再来个构造方法
		public Node(int value) {
   
			this.value = value;
		}
	}

	// 反转单项链表,这里用两种方法 Recursive递归 Traversing遍历

	// 首先是递归的方法
	public static Node reverseListRecursive(Node node) {
   
		// 如果node为null,或者到了最后一个节点,就返回这个节点(头节点)
		if (node == null || node.next == null) {
   
			return
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值