zoukankan      html  css  js  c++  java
  • 【数据结构】:链表(Python实现)

    链表这个数据结构在我们做题时非常常见,链表上的每一个元素都包含了两个值,一个值是自身的值,另外一个值则是指向下一个元素的地址,这样一整个链表才能够串连起来。如下所示:

     其中第一个为单链表,每一个元素都指向了下一个元素,最后一个元素指向了None。

    第二个为循环链表,也是每一个元素都指向了下一个元素,只是最后一个元素不指向None,而是指向链表当中的第一个元素,这样整个链表就不断循环链接起来了。

    第三个为双向链表,每个元素当中包含了三个值,每个元素包含了上一个元素的地址,下一个元素的地址,另外包含了自身的值的大小,这样就形成了一个一个双向链表。

    那么我们如何使用Python来实现一个最基本的单链表呢?代码如下所示:

    class ArrayList:
        def __init__(self, x):
            self.val = x
            self.next = None  # 这里next指向的是一个对象,而不是一个数值
    
    if __name__=='__main__':
        l1=ArrayList(1)
        l2=ArrayList(2)
        l3=ArrayList(3)
        l1.next=l2
        l2.next=l3
        l3.next=None

    这样就形成了一个简单的单向链表,同时这个单向链表一共具有三个节点node。

  • 相关阅读:
    ES6(二)
    ES6
    bootstrap
    数组对象
    bootstrap
    html5(二)
    css3转换、动画、布局
    整理的一些兼容写法
    css渐变、背景、过渡、分页
    css3(一)
  • 原文地址:https://www.cnblogs.com/geeksongs/p/13496016.html
Copyright © 2011-2022 走看看