回 帖 发 新 帖 刷新版面

主题:求解三道题目

1. 设计求已知三个数的中间数的算法.设比较次数为算法的基本操作,试回答你设计的算法是否为最优,算法的平均时间复杂度,最坏情况复杂度又各是多少?


2.设有两个有序表L1和L2,他们各有元素m个,试设计算法,以最少比较次数求出表L=L1 U L2中第k小的元素

3.设计一个算法,数组a[0]至a[n-1]中是否窜在这样的元素,使a[k]=k.并给出算法的运行时间分析.

回复列表 (共3个回复)

沙发

1、O(1)
2、归并算法
3、数组如果是无序的很显然是O(n)

板凳

1. O(1)
2. 分别用两个指针指着两个链表,然后再设一个计数器n ^_^
3. O(n)

3 楼

谢谢两位了~~

我对算法不太了解,以前就是学过c,但是算法这章是直接略过,所以现在看起来,很多都觉得不知道怎么解释

我想问一下第2题用c语言具体怎么实现,编写的过程是怎么样的?

我来回复

您尚未登录,请登录后再回复。点此登录或注册