链表和节点

 

 

 

# Definition for singly-linked list.
class ListNode(object):
    def __init__(self, x):
        self.val = x
        self.next = None
class Solution(object):
        tmp = ListNode(0)#ListNode()为LeetCode给出的函数,代码块顶部有详细定义
        res = tmp
        print("000 tmp is ",tmp)
        print("000 tmp.next is,",tmp.next)
        print("000 res is ",res)
        print("000 res.next is,",res.next)
        res.next = ListNode(1)#将res指向ListNode(1),此时res.next的值由None变为ListNode(1)在内存中的地址。
        print("111 res is ",res)
        print("111 res.val is ",res.val)
        print("111 res.next is,",res.next)
        node0=res.next
        print("00011 res is ",res)
        print("00011 res.val is ",res.val)
        print("00011 res.next is,",res.next)
        print("node0.val is",node0.val)
        print("node0.next is ",node0.next)
        print("node0 is ",node0)
        node1=ListNode(2)#定义一个节点,节点的值域是2,指针域是None.
        print("0000 node1.next is",node1.next)
        node1.next=res#将node1指向res,此时 node1的值域是2,指针域由None变为res在内存中的地址。
        print("1111 node1 =",node1)#node1即表示节点,也表示节点在内存中的地址值。
        print("1111 node1.next=",node1.next)
        print("1111 node1.val=",node1.val)
        print("111111 res is ",res)
        print("111111 res.val is ",res.val)
        print("111111 res.next is ",res.next)
        print("1111 node0  is ",node0)
        print("1111node0.val is",node0.val)
        print("1111node0.next is ",node0.next)
        
        #return 0
Solution()


			

注意:1,res 表示的是节点的名字,也表示的是节点在内存中的地址。

2,每个节点有两个部分,左边部分称为值域,用来存放用户数据;右边部分称为指针域,用来存放指向下一个元素的指针。指针域的值就是所指向的下个节点在内存中的地址。这本例中:node1.next就是node1的指针域,通过node1.next=res,将node1指向了res(res表示的是res在内存中的地址),所以node1.next的值是res在内存中的地址。

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值