链表数据结构

这一生的挚爱 提交于 2020-03-08 10:54:17

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

#链表的创建和连接函数#链表是由数据域item和next连接关系class Node:    def __init__(self,item):        self.item=item        self.next=Nonea=Node(1)b=Node(2)c=Node(3)a.next=bb.next=cprint(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.nextlk=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.nextcurnode.next=p#删除p=curnode.nextcurnode.next=curnode.next.nextdel p#双链表:节点与节点之间双向指向,next和periro

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!