单链表的遍历

目录

1.单链表是什么

 2.单链表的定义

3.单链表的遍历


1.单链表是什么

单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。

现实世界中的举例说明:

        火车:火车其实就是一个链表。每个车厢就是一个元素节点。假设每个车厢只能保存一个数据,每个车厢还连接了下一节车厢,即保存了下一节车厢的地址。

 2.单链表的定义

节点类的定义:

  class Node{
        int val;//保存的元素
        Node next;//下一个节点的地址
  }
  

链表类的定义:

public class SingleLinkedList {
    Node head;//第一个节点的地址
    int size;//节点的个数
}

由于每个节点都保存了下一个节点的地址,因此在链表类中,只需要知道第一个节点的地址即可。

3.单链表的遍历

1.方法1:while循环

public String toString(){
        StringBuilder sb=new StringBuilder();
        //从当前链表的第一个节点开始遍历,直到走到尾节点为止
        //第一个节点head
        //尾节点的next值==null
        Node temp=head;
        while(temp!=null){
            sb.append(temp.val);
            sb.append("->");
            if(temp.next==null){
                sb.append("null");
            }
            temp=temp.next;
        }
        return sb.toString();
    }
}

2.方法2:for循环

public String toString(){
        for(Node x=head;x!=null;x=x.next){
            sb.append(temp.val);
            sb.append("->");
            if(x.next==null){
                sb.append("null");
            }
        }
        return sb.toString();
    }
}

3.实现结果

public class SingleLinkedTest {
    public static void main(String[] args) {
        SingleLinkedList<Integer>list=new SingleLinkedList<>();
        list.addFirst(1);
        list.addFirst(2);
        list.addFirst(3);
        list.addFirst(4);
        list.addFirst(5);
        System.out.println(list.toString());
    }
}

这里添加了数字1,2,3,4,5,单链表的遍历应该输出

5->4->3->2->1->null


遍历成功。

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值