zoukankan      html  css  js  c++  java
  • 关于链表的长度,head == NULL 与 head.next == NULL的区别

    首先,求链表的长度需要遍历,下面为遍历的代码:

     //求链表的长度
        private int length(ListNode head) {
            int len = 0;
            while (head != null) {
                len++;
                head = head.next;
            }
            return len;
        }
     
     head 是头指针:
      1.头指针是指链表指向第一个结点的指针
      2.若链表有头结点,则是指向头结点的指针
      3.头指针具有标识作用,用头指针冠以链表的名字
      4.无论链表是否为空,头指针均存在
     
    head == NULL 与 head.next == NULL的区别:
    head == NULL意思是头指针是否为空
    head.next == NULL意思是头指针的下一个节点是否为空
     
    举个例子说明,例如链表有5个节点,[1,2,3,4,5],如果head指向1,则head->next指向2,则:
     
    head == NULL  等同于 :1 == null     ,  head.next == NULL 等同于 :2 == null
     
    所以上面的函数会返回 :5
     
     
     
  • 相关阅读:
    Epoll技术深入学习
    nginx
    epoll案例
    Linux网络编程初步
    链表快速排序(已通过ACM在线评测)
    C++内存管理
    c++11并发语法初步
    数据库与SQL优化笔记(一)
    C++面向对象模型(虚表与虚表指针)
    c++的一些杂项
  • 原文地址:https://www.cnblogs.com/huangbf/p/15117754.html
Copyright © 2011-2022 走看看