python的链表与数组对比,优势和劣势

1、python中的链表如何实现

class Node(object):
    def __init__(self, data, next):
        self.data = data
        self.next = next

if __name__ == '__main__':
    head = None
    for n in range(1,6):
        head = Node(n, head)

    while head != None:
        print(head.data)
        head = head.next

Python程序员使用对象引用建立起节点和链表结构。

上面的程序定义了一个节点,并且利用循环生成一个链表并访问列表。

生成的链表是这样的:

大家都知道,使用链表的好处,程序向内存申请内存时不要求内存是连续的,这与数组对内存空间在物理上必须连续是不一样的。链表结构的另一个好处是为删除和插入节点带来了好处,不需要移动大量的节点,只需要修改节点“指针”。java和Python中是没有指针一说的,都是通过引用实现的,C和C++中有指针的概念。

单链表结构相对于数组的主要优点不在于时间性能,而在于内存性能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值