这几道题好难啊,完全不会!求大神解答
全是证明题,网易云课堂的题目。
1、设a1, a2, …, an为n个不同的数字,如果i<j但是ai>aj, 我们称ai和aj是倒置的,冒泡排序交换输入中两个相邻倒置数的位置,直到没有倒置数为止,从而使得列表排序,假设冒泡排序算法的输入是一个随机序列,等可能地为n个不同数的n!种排列中任意一个,确定使用冒泡排序算法需要纠正倒置数的期望次数。
2、a1, a2, …, an是{1, 2, …, n}的一个随机排列,等可能第位n!中可能排列中的任意一个,当对列表a1, a2, ..., an排序时,元素ai从它当前位置到达排序位置必须一定|ai-i|的距离,求元素必须移动的期望总距离
3、证明:在有n个数的序列中找出最大的数至少需要n-1次比较
4、证明:对于任何只基于比较的查找算法,二分查找是最优的。
5、设计一个对7个元素进行排序的方法,保证其平均比较次数最少,要求证明这个结论