Java创建单链表

节点表示:
class Node {
int val;
Node next;
Node(int x) { val = x; }
}

注意:传递链表时,也就是节点时,我们不能改变节点的指向,但是可以改变节点内成员的值。

public class MergeTwoSortedLists {
	
	static Node head = null;//链表头的作用
	public static void main(String[] args){
	
        //下面两行是测试,注意当s指向一个节点时,s.next为空,当s没有指向时,s.next不能进行引用
		Node s = new Node(10);
		System.out.println(s.next);
		//也可循环建立
		MergeTwoSortedLists.addNode(10);
		MergeTwoSortedLists.addNode(20);
		MergeTwoSortedLists.addNode(30);
		//打印链表
		MergeTwoSortedLists.printList();
		
    }
    //在尾部插入
    public static void addNode(int d){
	        Node newNode=new Node(d);
	        //处理第一个节点
	        if(head==null){
	            head=newNode;
	            return;
	        }
	        Node tmp=head;
	        //注意插入第二个节点时,这个while不执行
	        while(tmp.next!=null){
	        	System.out.println("111");
	            tmp=tmp.next;
	        }
	        //add Node to end
	        tmp.next=newNode;
	    }
   public static void printList(){
	        Node tmp=head;
	        while(tmp!=null){
	            System.out.print(tmp.val+" ");
	            tmp=tmp.next;
	        }
	        System.out.println();
	    }
}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值