20分填空(考概念)+8道大题
14 疑问:
- 如果用邻接表来表示E’,为什么时间复杂度是O(|V|+|E|)??
我认为,这是因为邻接表遍历一遍所有边需要O(|V|+|E|),这里要用顶点覆盖所有的边,相当于把所有的边都遍历一遍
- 时间复杂度如何计算??
U为点的集合,U∩S确实需要时间O(|X|),因为要选择F中最大的S∩U,所有有|F|个情况,需要时间O(|X||F|)
对于while循环,直到U为空集,最多|X|次循环;并且每次选择|F|中的一个元素,最多|F|次循环,所有至多min(|X|,|F|)次循环
- 这…顺序交叉如何实现的??
15 概念题总结
- 动态表装载因子:表中存储的数据项的数量与表规模的比值
3.
4.
算法正确性:对于每一个输入都最终停止并产生正确的输出结果算法正确性:对于每一个输入都最终停止并产生正确的输出结果
随机算法:对所有输入都停止,可能产生错误解,但与输入不相关,且错误解的产生可控
近似算法:对所有输入都停止,对所有输入都产生近似正确的解
复杂度分析的目的:预测算法对不同规模输入所需要的资源,提供衡量算法优劣的测度手段,为算法选择提供依据
渐进复杂度:随着输入规模n的增加,复杂度函数的增长趋势
16 排序总结
- 快排序
- 归并排序:分治法
- 插入排序
- 冒泡排序
- 基数排序