ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

单向链表的头插

2019-09-15 15:35:45  阅读:139  来源: 互联网

标签:Node head val 单向 next 链表 new


对链表做头插,首先定义一个Node类型,然后实现一个头插有两种情况,空链表和非空链表,对于头插来说,空链表和非空链表来说是一样的,实现头插的过程就是让需要插入的节点的next指向原来的head,接着再更新head,让head指向node即可,这里我还定义了一个实现打印链表的方法,传入参数是链表的头节点,并按照一定的格式来输出。

public class Node {
    int val;
    Node next=null;
    Node(int val){
        this.val=val;
    }
}

public class  pushFront {
    public static Node pushFront(Node head,int val) {
        //头插
        //先判断是否是空链表
        //空链表和非空链表的处理方法一样
        Node node=new Node(val);
        node.next=head;
        head=node;
        return head;//更新链表的头结点
        }
        public  static void  Print(Node  head){
           Node  cur=head;
           while(cur!=null){
               System.out.print(cur.val+"-->");
               cur=cur.next;
           }
            System.out.print("null");
        }
    public static void main(String[] args) {
        Node p1 = new Node(1);
        Node p2 = new Node(2);
        Node p3 = new Node(3);
        Node p4 = new Node(4);
        Node p5 = new Node(5);
        p1.next=p2;
        p2.next=p3;
        p3.next=p4;
        p4.next=p5;
        p5.next=null;
        System.out.print("头插前:");
        Print(p1);
        System.out.println();
       Node  head= pushFront(p1,6);
        head= pushFront(head,7);
        head= pushFront(head,8);
        System.out.print("头插后:");
        Print(head);
    }
}

标签:Node,head,val,单向,next,链表,new
来源: https://blog.csdn.net/laly123321/article/details/100847675

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有