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

    python实现链表的代码如下所示:

    #链表的创建和连接函数
    #链表是由数据域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.item)
    #头插法创建链表(倒序)
    def creat_linklist_head(li):
    head=Node(li[0])
    for element in li[1:]:
    node=Node(element)
    node.next=head
    head=node
    return head

    #尾插法创建链表(顺序)
    def creat_linklist_tail(li):
    head=Node(li[0])
    tail=head
    for element in li[1:]:
    node=Node(element)
    tail.next=node
    tail=node
    return head

    #打印链表的各个元素的函数
    def print_linklist(lk):
    while lk:
    print(lk.item,end=",")
    lk=lk.next

    lk=creat_linklist_head([1,2,3])
    print_linklist(lk)
    lk=creat_linklist_tail([1,2,3])
    print_linklist(lk)

    #链表的插入与删除,时间复杂度为O(1)
    p=Node(100)
    curnode=Node(3)
    curnode.next=Node(4)
    #链表的插入与删除
    #插入
    p.next=curnode.next.next
    curnode.next=p
    #删除
    p=curnode.next
    curnode.next=curnode.next.next
    del p

    #双链表:节点与节点之间双向指向,next和periro



  • 相关阅读:
    python转换emoji字符串
    python位运算符详细介绍
    python制作动态排序图
    docker安装mysql
    yum安装centos-7版nginx
    pysimplegui模块实现倒计时UI框
    pysimplegui模块实现进度条
    python枚举的应用enum
    第0-0课
    SV -- Array 数组
  • 原文地址:https://www.cnblogs.com/Yanjy-OnlyOne/p/12441114.html
Copyright © 2011-2022 走看看