首页 > 代码库 > python实现的链表
python实现的链表
python实现的链表,包括插入、查找、删除操作
#!/usr/bin/python class linknode(): def __init__(self,k,n=None): self.key=k; self.next=n; def createlist(): #创建链表 n=raw_input("enter the num of nodes"); n=int(n); if n<1 : return ; else : a=raw_input("enter the key"); head=linknode(k=a); if n is 1: return head; else : p=head; for i in range(1,n): a=raw_input("enter a key"); t=linknode(k=a); p.next=t; p=t; return head; def printlist(head): #打印链表 p=head; while p!= None: print p.key; p=p.next; def listlen(head): #计算链表长度 c=0; p=head; while p!= None: c=c+1; p=p.next; return c; def insert(head,n): #插入元素 if n<1 or n>listlen(head) : return ; p=head; if n is 1: a=raw_input("enter a key"); t=linknode(k=a); t.next=head; head=t; else : for i in range(1,n-1): p=p.next; a=raw_input("enter a key"); t=linknode(k=a); t.next=p.next; p.next=t; return head; def dellist(head,n): #删除 if n<1 or n>listlen(head): return head; elif n is 1: head=head.next; else: p=head; for i in range(1,n-1): p=p.next; q=p.next; p.next=q.next; return head; def findlist(head,n): # 查找 p=head; if p is None: return ; while(p!=None): if p.key is repr(n): print "find it"; return 1; else: p=p.next; if p is None: print "not found";
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。