单链表--头插/尾插

头插

1)如果要插入的数据没有结点,先给他装入一个节点中。
Node node=new Node( );
node value=0;
2)让原来的第一个结点成为新结点的下一个结点。
node.next=head;
3)更新最新的第一个结点为新结点。
head=node;
在这里插入图片描述

遍历所有结点

Node cur=head;
while (cur != null){
System.out.println ( cur.val );
cur=cur.next;
}

尾插

1)空链表的处理
让新的结点成为第一个结点。

2)非空链表的处理
  2.1如果没有在结点中,找到结点,让新的结点的next = null;
Node node = new Node ( val );
  2.2找到倒数第一个结点(子问题)
找到 . next= null的结点
Node last = head ;
while(lasat.next!=null){
last=last.nest;
} //last就是最后一个结点
  2.3让原来的倒数第一个结点的下一个为新的结点
last.nest=node;

private static Node pushBack(Node head, int val) {
Node node = new Node(val);
if (head == null) {
return node;
} else {
Node last = head;
while (last.next != null) {
last = last.next;
}
last.next = node;
return head;
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值