若将森林中的每棵树视作一个等价类,则Kruskal算法迭代过程所涉及的计算不外乎两类:
支持以上操作接口的数据结构,即所谓的独立集(disjoint set),亦称作并查集(union-find set)。
a)试基于此前介绍过的基本数据结构实现并查集,并用以组织Kruskal算法中的森林;
b)按你的实现,find()和union()接口的复杂度各是多少?相应地,Kruskal算法的复杂度呢?
第1题
将每个顶点视作一棵树,并将所有边按权重非降排序;
依次考查各边,只要其端点分属不同的树,则引入该边,并将端点所分别归属的树合二为一;
如此迭代,直至累计已引入n-1条边时,即得到一棵极小支撑树。
试证明:
a)算法过程中所引入的每一条边,都是某一割的极短跨越边(因此亦必属于某棵极小支撑树);
b)算法过程中的任一时刻,由已引入的边所构成的森林,必是某棵极小支撑树的子图;
第2题
a)试证明,在后一类树中,新成员的权重(频率)总是最大;
b)试利用以上性质设计一个算法,在O(n)时间内完成Huffman编码。
第5题
为求方程x3-x2-1=0在1.5附近的一个根,现将方程改写成下列的等价形式,且建立相应的迭代公式:
试分析每一种迭代公式的收敛性,并任取一种收敛的迭代公式计算方程在1.5附近的根,要求|xk+1-xk|<10-6.
第6题
为求方程x3-x2-1=0在x0=1.5附近的一个根,设将方程改写成下列等价形式,并建立相应的迭代公式.
试分析每种迭代公式的收敛性,并选取一种公式求出具有四位有效数字的近似根.
第9题
已知方程x3-x2-0.8=0在x0=1.5附近有一个根.将此方程改写成如下两个等价形式:
构造如下两个迭代格式:
判断这两个迭代格式是否收敛.选一种收敛较快的迭代格式,求出具有4位有效数字的近似根.
第10题
已知方程
x3-x2-0.8=0在x0=1.5附近有一个根,将此方程改写成如下2个等价形式:
判断这两个迭代格式是否收敛。
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!