试证明:a)规模为n的任何二叉搜索树,经过不超过n-1次旋转绸整,都可等价变换为仅含左分支的二叉搜索树,即最左侧通路(leftmost path);b)规模为n的任何两棵等价二叉搜索树,至多经过2n-2次旋转调整,即可彼此转换。
第1题
第3题
第4题
考查任何一棵高度为h的二叉树T,设其中深度为k的叶节点有nk个,0≤k≤h。
a)试证明:
b)以上不等式取等号的充要条件是什么?
第6题
第8题
批处理作业调度问题要求对于给定的n个作业,制定最佳作业调度方案,使其完成时间和达到最小.
算法设计:对于给定的n个作业,计算最佳作业调度方案.
数据输入:由文件input.txt提供输入数据.文件第1行有1个正整数n,表示作业数.接下来的n行中,每行有2个正整数i和j,分别表示在机器1和机器2上完成该作业所需的处理时间.
结果输出:将最佳作业调度方案及其完成时间和输出到文件output.txt.文件的第1行是完成时间和,第2行是最佳作业调度方案.
第9题
Joseph Kruskal于1956年提出了构造极小支撑树的另一算法:
将每个顶点视作一棵树,并将所有边按权重非降排序;
依次考查各边,只要其端点分属不同的树,则引入该边,并将端点所分别归属的树合二为一;
如此迭代,直至累计已引入n-1条边时,即得到一棵极小支撑树。
试证明:
a)算法过程中所引入的每一条边,都是某一割的极短跨越边(因此亦必属于某棵极小支撑树);
b)算法过程中的任一时刻,由已引入的边所构成的森林,必是某棵极小支撑树的子图;
第11题
设B为A=(1,2,3,...,n)的任一排列。
a)试证明,B是A的一个栈混洗,当且仅当对于任意1≤i<j<k≤n,P中都不含如下模式:{...,k,...,i,...,j,...}
b)若对任意1≤i<j<k<n,B中都不含模式{...,j+1,...,i,...,j,...},则B是否必为A的一个栈混洗?若是,试给出证明;否则,试举一反例。
c)若对任意1<i<j<k≤n,B中都不含模式{...,k,...,j-1,...,j,...},则B是否必为A的一个栈混洗?若是,试给出证明;否则,试举一反例。