数据结构
tt20210101
这个作者很懒,什么都没留下…
展开
-
深度优先搜素的理解
1. from pythonds.graphs import Graph, Vertex2. def knightTour(n, path, u, limit):3. u.setColor('gray')4. path.append(u)5. if n < limit:6. nbrList = list(u.getConnections())7. i = 08. done = Fals转载 2021-05-15 21:33:04 · 86 阅读 · 0 评论 -
广度优先搜素的理解
1. from pythonds.graphs import Graph, Vertex2. from pythonds.basic import Queue3. def bfs(g, start):4. start.setDistance(0)5. start.setPred(None)6. vertQueue = Queue()7. vertQueue.enqueue(start)8. while (vertQueue原创 2021-05-15 20:08:41 · 82 阅读 · 0 评论 -
学习AVL树的2个难点
今天学习了AVL树的实现,有2个地方想了很久才想明白。问题1.为什么在父节点的平衡因子调整为零时结束递归调整?即 if node.parent.balaceFactor != 0:self.updateBalance(node.parent)问题2.如何推导rotRoot.balaceFactor=rotRoot.balaceFactor+1-min(newRoot.balaceFactor,0)问题1的分析:如图,要形成节点左倾(右倾用类似方法分析),新节点A只可能在4个位置存在:情况1原创 2021-05-15 16:22:10 · 192 阅读 · 0 评论