首页 > 其他分享 >有关链表我终于想通了!!

有关链表我终于想通了!!

时间:2023-11-16 17:33:46浏览次数:33  
标签:node 想通 head next 链表 地址 终于 结构

  1. head是指向结构体的指针,变量类型是指针,每种变量都放在某个地址上,因此head变量是放在某地址(编译器分配)上的十六进制数,十六进制数表示它指向的链表的地址

  2. 也就是说,head本身有地址,head实际上存的值,是链表结构体的地址!

  3. 至于head->next,本质上是结构体的一个成员,所以head->next的地址必定是head的值(结构体的地址)的偏移!!!

  4. 插入新节点,是给head->next赋值,但head->next的地址不会变,变得是head->next地址这个值的地址上放的值!

  5. 因此: Node * node = head, head->next = nullptr,也会影响到node->next,因为node = head意思是,node也指向这个结构体(链表)了(node的值等于head的值,这个值就是链表的地址),而这个结构体的成员next变成null了,所以node->next也变了!!

标签:node,想通,head,next,链表,地址,终于,结构
From: https://www.cnblogs.com/xsl-blogs/p/17836620.html

相关文章

  • (链表)07-链表中环的入口结点
    1/*2publicclassListNode{3intval;4ListNodenext=null;56ListNode(intval){7this.val=val;8}9}10*/11publicclassSolution{1213publicListNodeEntryNodeOfLoop(ListNodepHead){14......
  • (链表)13-判断一个链表是否为回文结构
    1importjava.util.*;23/*4*publicclassListNode{5*intval;6*ListNodenext=null;7*}8*/9publicclassSolution{10/**11*12*@paramheadListNode类thehead13*@returnbool布尔型14*/15......
  • (链表)06-判断链表中是否有环
    1/**2*Definitionforsingly-linkedlist.3*classListNode{4*intval;5*ListNodenext;6*ListNode(intx){7*val=x;8*next=null;9*}10*}11*/12publicclassSolution{13p......
  • 牛客题霸 BM1 反转链表
    BM1 反转链表  简单  通过率:38.76%  时间限制:1秒  空间限制:256M知识点链表描述给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。 数据范围: 0\leqn\leq10000≤n≤1000要求:空间复杂度......
  • 终于有人把VMware虚拟机三种网络模式讲清楚了!
    前段时间VMware更新了,你用上最新版了吗?有几个网工在操作中遇到过各种各样的问题。比如说由于公司服务器重启导致出现下面的问题:在Xshell里连接虚拟机映射时连接失败;能够连接上虚拟机的映射地址,但gitpull时报错无法解析hostname……其实这些都是ip问题导致的,但主要还是虚拟机的网络......
  • (链表)05-合并K个已排序的链表
    1importjava.util.*;23/**4*Definitionforsingly-linkedlist.5*publicclassListNode{6*intval;7*ListNodenext;8*ListNode(intx){9*val=x;10*next=null;11*}12*}13*/1......
  • (链表)12-单链表的排序
    1importjava.util.*;23/*4*publicclassListNode{5*intval;6*ListNodenext=null;7*publicListNode(intval){8*this.val=val;9*}10*}11*/12publicclassSolution{13/**14*@paramhead......
  • (链表)04-合并两个排序的链表
    /*publicclassListNode{intval;ListNodenext=null;ListNode(intval){this.val=val;}}*/publicclassSolution{publicListNodeMerge(ListNodelist1,ListNodelist2){//添加头节点ListNoderoot=ne......
  • (链表)11-链表相加
      1importjava.util.*;23/*4*publicclassListNode{5*intval;6*ListNodenext=null;7*}8*/910publicclassSolution{11/**12*13*@paramhead1ListNode类14*@paramhead2ListNode类15......
  • [链表] 1-反转链表
    1/*2publicclassListNode{3intval;4ListNodenext=null;56ListNode(intval){7this.val=val;8}9}*/10publicclassSolution{11publicListNodeReverseList(ListNodehead){12//申请临时变......