Java尾插法头插法建立链表

package 链表的实现;

public class Singlelinkedlist {
    public static void main(String[] args) {
        Node node = new Node(3);
        System.out.println(node.data);

        int arr[]={1,2,3};
        Node node1 = null;

        print(createNodetail(node1,arr));
        //System.out.println(1);

    }

    //定义链表操作函数
    //头插法建立链表
    public static Node createNodehead(Node node, int val[]){
        for(int i=0;i<val.length;i++){
            Node p=new Node(val[i]);
            p.next=node;
            node=p;
        }
        return node;
    }
    //尾插法建立链表
    public static Node createNodetail(Node node,int val[]){
        Node temp = null;   //辅助节点
        for(int i=0;i<val.length;i++){
            Node p=new Node(val[i]);
            if(node==null) {
                node=temp=p;
            }else{
                temp.next=p;
                temp=p;
            }
        }
        return node;
    }
    //输出链表
    public static void print(Node node){
        for(Node p=node;p!=null;p=p.next){
            System.out.print(p.data+" ");
        }
    }
    //定义单链表
    public static class Node{
        public int data;//结点数据
        public Node next; //指向下一个指针
        public Node(int data){
            this.data = data;
        }

    }
}



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值