zoukankan      html  css  js  c++  java
  • 数据结构-链表

     链表概念

      链表是由一系列节点组成的元素集合

      每个节点包含两部分,数据域item和指向下一个节点的指针next

      手动创建链表

    class Node:
        def __init__(self, item):
            self.item = item
            self.next = None
    
    a = Node(1)
    b = Node(2)
    c = Node(3)
    a.next = b
    b.next = c
    print(a.next.next.item)
    

    链表操作

      创建链表有头插法和尾插法

    class Node:
        def __init__(self, item):
            self.item = item
            self.next = None
    
    #头插法 会导致倒序
    # def create_linklist(li):
    #     head = Node(li[0])
    #     for element in li[1:]:
    #         node = Node(element)
    #         node.next = head
    #         head = node
    #     return head
    
    #尾插法
    def create_linklist(li):
        head = Node(li[0])
        tail = head
        for element in li[1:]:
            node = Node(element)
            tail.next = node
            tail = node
        return head
    
    lk = create_linklist([1,2,3])
    # print(lk.next.item)
    
    #链表的遍历
    def print_lk(lk):
        while lk:
            print(lk.item, end=',')
            lk = lk.next
    print_lk(lk)

      链表的插入

      链表删除

    双链表

      双链表插入

      双链表删除

  • 相关阅读:
    angularJS(5)
    angularJS(4)
    angularJS(3)
    AngularJS(1)
    angularJS(2)
    关于响应式布局
    PHP+JQUEY+AJAX实现分页【转】
    bootscript/javascript组件
    你必须收藏的Github技巧
    关于php的一些小知识!
  • 原文地址:https://www.cnblogs.com/xinsiwei18/p/10327237.html
Copyright © 2011-2022 走看看