p y数据结构答案
w__daxia
这个作者很懒,什么都没留下…
展开
-
Data Structures and Algorithms in Python by Michael T. Goodrich (Author), Roberto Tamassia答案,代码
data structures and algorithms in python答案我的资源中有相应的ebook和源代码第一章答案第一章第二章答案第二章第四章答案第四章第五章答案第五章第六章答案第六章原创 2020-07-13 14:29:08 · 2466 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第十一章
第十一章本章叙述了不同平衡树的构造性能问题习题代码如下(部分代码引用书中源代码,源代码位置目录在第二章答案中介绍)#11.1#(1,A)# \# (2,B)# \# (3,C)# \# (4,D)# \# (5,E)#11.2 详细图略# 30# / \#原创 2021-02-14 19:40:03 · 1230 阅读 · 1 评论 -
使用单节点构成2-3-4树
2-3-4树 2-3-4树称为(2,4)树,满足两点: ·大小属性:每个内部节点最多有4个孩子 ·深度属性:所有外部结点具有相同的深度2-3-4树如图:对2-3-4树的详细方法不进行叙述。在树中使用单个结点搭建上图结构,令h3位_root,h1和h4非别为各自的_head结点。单个结点图:每个结点有四个指针大致结构图:保证每个节点的四个指针都指向其他结点或None添加结点:对应代码中的_up_split方法如果添加结点后导致不满足大小属性时进行分裂操作:如图此时k1,原创 2021-01-20 13:14:53 · 1368 阅读 · 5 评论 -
AVL树旋转时平衡因子的计算
AVL树的平衡因子的计算AVl树(以发明家Adel’son-Vel’skii和Landis的首字母缩写明明)最初定义为以p为根的树的高度时从p节点到叶子结点的最长路径上的边数。不对详细旋转过程做叙述右旋右旋过程:计算过程:F(D)指D节点的平衡因子oldF(D)指D节点旋转前的平衡因子h(B)指B节到叶子结点的边数oldh(B)指旋转前B节点到叶子结点的边数max( h(A), h© )指从A和C节点到叶子结点的边数多中返回较大值min( h(A), h© )指从A和C节点到叶原创 2021-01-20 09:34:04 · 890 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第十章
第十章本章讲述哈希表,和跳跃表有一个难点是证明二次探测定理The quadratic probing strategy has a clustering problem related to the way it looks for open slots. Namely, when a collision occurs at bucket h(k), it checks buckets A[(h(k) +i2) mod N], for i = 1,2,…,N −1.a. Show that i2原创 2020-10-09 17:47:38 · 1006 阅读 · 1 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第九章
第九章本章讲述优先级队列,对结构堆进行学习应用,较简单习题代码如下(部分代码引用书中源代码,源代码位置目录在第二章答案中介绍)# 堆结构可进行部分排序# 9.1 logn个元祖,每删除一个根元节点将花费logn的时间,所以总时间为logn*logn=log(n^n)# 9.2 令根节点为第0个访问的元素。设元素访问的index为d,满足第2*d+1 和2*d+2访问的元素大于第d个访问的元素即可# 9.3 (5,A)、(4,B)、(4,B)、(1,D)、(4,B)、(3,J)、(3,J)、(4,原创 2020-09-20 10:26:32 · 905 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第八章
第八章本章重在灵活应用树,对树的重构练习较少slicingtree切片树和博弈树是本章练习稍微难的地方:切片树:题目中并没有给出图形按什么切割,所以我使用随机切割,见8.67(可食用turtle库完整画出树和图的切割)博弈树:博弈树的评估算法很简单,比较zz,可以修改评估算法增加可玩性,见8.68。习题代码如下(部分代码引用书中源代码,源代码位置目录在第二章答案中介绍) # 8.1 根节点:/user/rt/courses/# 根节点以下是内部节点# 9 个子孙节点#原创 2020-08-28 15:43:16 · 1359 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第七章
第七章本章重点为灵活使用链表,深度理解位置链表习题代码如下(部分代码引用书中源代码,源代码位置目录在第二章答案中介绍)# 本节默认队列使用书中源代码队列# 单链表应该以None结尾,并未给出链表示列# 简述:next为共有节点,可公共访问,first()返回头节点,没有保存尾节点# 7.1def text1(link): '''yield every node since after the second node from a link ''' node = lin原创 2020-07-26 21:43:18 · 1616 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第六章
第六章本章详细叙述的栈和队列ADT模型,加强理解栈和队列与问题之间的转化。但在6.30题还有疑问。原著:Alice has two queues, Q and R, which can store integers. Bob gives Alice50 odd integers and 50 even integers and insists that she store all 100integers in Q and R. They then play a game where Bob pi原创 2020-07-13 14:05:50 · 1062 阅读 · 1 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第五章
第五章详细介绍了动态数组的构造过程以及对其时间复杂度进行研究,深入探讨list不同情况下的效率。本章练习偏向测试不同结构的时间效率,代码粗糙,望大佬指出方便改进# 5.1def text1(n): import sys l = [] temp = 0 times = 0 for i in range(n): size = sys.getsizeof(l) if temp == size: times +原创 2020-07-06 10:33:56 · 1017 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第四章
第四章 递归代码粗糙,望大佬指出方便改进#4.1 front为头指针,rear为尾指针def recursion(li,front,rear): if front==rear or front+1==rear: return max(li[rear],li[front]) return max(recursion(li,front,int((front+rear)/2)),recursion(li,int((front+rear)/2)+1,rear)) pr原创 2020-07-01 20:07:05 · 1156 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第二章
第二章答案本章答案需要配合使用教材中例题的源代码可以自己手打一遍一可以在网上下载使用,也可以在我分享的资源中下载需要将下载的code放在合适的位置from TheCode.ch02.progressions import Progression我将源代码放在了本代码目录下TheCode中,使用了其中的ch02中的progressions2.4答案#2.4class Flower(object): ''' name num price change_nam原创 2020-06-14 16:47:52 · 2015 阅读 · 0 评论 -
数据结构与算法Python语言实现《Data Structures & Algorithms in Python》手写课后答案--第一章
第一章答案每函数为一题答案,第一章较为简单,放在了一个文件中def is_multiple(n,m): if m%n ==0 : return True else: return False #return (m%n ==0) #改进#1.2def is_even(n): l = list(bin(n)) if l[-1] == '0': return True e原创 2020-06-14 15:58:03 · 1623 阅读 · 0 评论