栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python链表

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python链表

以下是一些基于Martin诉Löwis陈述的列表函数:

cons   = lambda el, lst: (el, lst)mklist = lambda *args: reduce(lambda lst, el: cons(el, lst), reversed(args), None)car = lambda lst: lst[0] if lst else lstcdr = lambda lst: lst[1] if lst else lstnth = lambda n, lst: nth(n-1, cdr(lst)) if n > 0 else car(lst)length  = lambda lst, count=0: length(cdr(lst), count+1) if lst else countbegin   = lambda *args: args[-1]display = lambda lst: begin(w("%s " % car(lst)), display(cdr(lst))) if lst else w("niln")

哪里

w = sys.stdout.write

尽管在Raymond Hettinger的有序集配方中使用了双向链接列表,但单链接列表在Python中没有实际价值。

除了教育方面的问题外,我从未在Python中使用过单链接列表。

托马斯·沃特纳尔( Thomas Watnedal)提出了很好的教育资源,《如何像计算机科学家一样思考》,第17章:链接列表:

链表是:

  • 空列表,由“无”表示,或
  • 包含货物对象和对链表的引用的节点。
class Node:   def __init__(self, cargo=None, next=None):     self.car = cargo     self.cdr = next      def __str__(self):     return str(self.car)def display(lst):  if lst:    w("%s " % lst)    display(lst.cdr)  else:    w("niln")


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390469.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号