链表的基本操作(java版)

引言

最近在刷剑指offer和LeetCode的时候,看到了很多关于链表的问题,以前只学过c版本的链表,而且学的不是太好,现在总结一下java版本实现链表基本操作的问题

基本操作

先新建一个节点类:

public class ListNode {
	
	    int val;
	    ListNode next = null;  

	    ListNode(int val) {
	        this.val = val;
	    }
	}

基本操作:

ListNode head = null;
	@SuppressWarnings("null")
	public  void add(int data) {
		ListNode newnode = new ListNode(data);
		if(head==null)
			
		{
			head = newnode;
			return;
		}
		ListNode temp = head;
		while(temp.next!=null)
		{
			temp=temp.next;
		}
		temp.next=newnode;
	}
	public void printLink(){
        ListNode curNode = head;
        while(curNode !=null){
            System.out.print(curNode.val+" ");
            curNode = curNode.next;
        }
        System.out.println();
    }
	public void length() {
		ListNode temp = head;
		int i =0;
		while(temp!=null)
		{
			i++;
			temp = temp.next;
		}
		System.out.println(i);
			
	}
	
	
	
	    public static void main(String[] args) {
		SinglyLinkedList list = new SinglyLinkedList();

		list.add(1);
		list.add(2);
		list.printLink();
		list.length();
	    
		

		
		
		

	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值