对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是(  )。

作者&投稿:离刷 (若有异议请与网页底部的电邮联系)
~ 【答案】:D

D。【解析】本题主要考查对排序算法的理解。冒泡排序法首先将第一个记录的关键字与第二个记录的关键字进行比较,若逆序则交换,然后比较第二个与第三个,以此类推,直至第n-1个与第n个记录的关键字进行比较。第一趟冒泡排序使最大的关键字元素放到最后。以此类推,进行第2~n次冒泡排序。如果在排序过程中不存在逆序,则排序结束。在最坏情况下,冒泡排序中,若初始序列为“逆序”序列,则需要比较n(D-1)/2次。快速排序是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字比另一部分记录的关键字小,然后分别对这两部分记录继续进行排序,最终达到整个记录有序。对于快速排序,当初始记录序列按关键字有序或基本有序时,快速排序退化为冒泡排序,最坏情况下比较次数为n(n-1)/2。


对一个长度为n的线性表进行逆置运算,时间复杂度是多少?
对一个长度为n的线性表进行逆置运算的时间复杂度是O(n),因为需要遍历整个线性表并将元素逆序排列。

已知线性表A的长度为n,并且采用顺序存储结构。写一算法,删除线性表中...
P->n=p->n-count;if(p->element[i]==x)p->n--;} (4)代价分析 该算法访问顺序表中每个元素各一次,时间代价为O(n)。这个算法使用了一点技巧,使得在中间删除元素时,避免了最后一串元素的移动。但是,它破坏了原来线性表中元素之间的顺序关系。如果需要保持原来的顺序应该怎样做?这里提供...

在长度为n的线性表中寻找最大项至少需要比较多少次
如果是线性存储的(不包括线性的链式表),那么里面的内容要不就是从大到小,要不就是小到大的顺序,假设第一个数就是最大值,是比较1次就行,N-1应该是最坏情况下要比较的次数。在一个单链表中的p所指节点之后插入一个s结点时,可执行如下操作:s->next=(1)。p->next=(2)。其中(1)和...

已知长度为n的线性表A采用顺序存储结构,设计一个算法,使得该线性表中的...
相当于数组的顺序排列

对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移...
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数是不同的。1、当对n个元素进行插入操作时,有n+1个位置可以进行插入,如下所示。.1.2.3.4. -- .n.而在每个位置插入时需要移动的元素个数分别为n,n-1,n-2...,1,0,所以,总共需要移动的元素个数为...

在长度为n的有序线性表中进行二分查找,需要的比较次数为什么是:以2...
二分查找的基本思想是将n个元素分成大致相等的两部分,去a[n\/2]与x做比较,如果x=a[n\/2],则找到x,算法中止;如果xa[n\/2],则只要在数组a的右半部搜索x. 时间复杂度无非就是while循环的次数! 总共有n个元素, 渐渐跟下去就是n,n\/2,n\/4,...n\/2^k,其中k就是循环的次数 由于你n\/2...

下列算法中,最坏情况下时间复杂度最低的为___。
【答案】:C 快速排序法需要比较nlog2n;堆排序法,最坏情况需要0(nlog2n)次比较;二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。故本题选C。

为什么"若长度为n的线性表采用顺序存储结构在其第i个位置插入一个新元素...
若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法时间复杂度为O(n)。

长度为n的有序线性表,在最坏情况下,二分查找只需要比较log2n次。谁...
一个有序线性表 可以看做在一个完全的二叉排序树 比如0 1 2 3 4 5 6 7 我们就可以看做这样一个树 4 2 6 1 3 5 7 0 二分查找在图论上的含义 正是在这样一个二叉树上查找某个节点 最多需要的比较次数也就是树的高度这么多 那么树高怎么算 就是log2(n)取整数 时间复杂度就...

已知长度为n的线性表A中的元素是整数,采用顺序储存结构,删除线性表中...
int n;A->elem=(int *)malloc(sizeof(int)*maxsize);printf("请输入整数n\\n");scanf("%d",&n);A->length=n;for(i=0;i<n;i++){ printf("请输入%d个整数\\n",i+1);scanf("%d",A->elem+i);} } void output(sqllist *A){ int i;printf("顺序表中数值为:\\n");for(i=...

山南地区15764564207: 对于长度为n的线性列表,在最坏的情况下,比较次数为多少 -
主父侦治咳: hghg

山南地区15764564207: 对长度为n的线性表进行顺序查找,在最坏情况下所的比较次数为多少?给一个解题思路 -
主父侦治咳:[答案] 最糟糕的情况应该是比较到线性表最后一个值,也没有查找到所需要的值,那么从线性表的第0个值开始比较,每次取出一个值比较,不符合,再取下一个值,依次比较,一直到最后一个,那么长度为N,就需要比较N次.

山南地区15764564207: 关于冒泡排序与快速排序. 对于长度为N的线性表,在最坏的情况下,下列各排序法所对应的比较次数中正确的是(). -
主父侦治咳:[选项] A. 冒泡排序为N/2 B. 冒泡排序为N C. 快速排序为N D. 快速排序为N(N-1)/2

山南地区15764564207: 对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为 - ---. -
主父侦治咳: 最糟糕的情况应该是比较到线性表最后一个值,也没有查找到所需要的值,那么从线性表的第0个值开始比较,每次取出一个值比较,不符合,再取下一个值,依次比较,一直到最后一个,那么长度为N,就需要比较N次.

山南地区15764564207: 对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( ) -
主父侦治咳: D~ 冒泡最坏情况下,就是反序的序列排序,例如 3 2 1排成1 2 3 这样排的话,比较次数就是n*(n-1)/2 快速排序最坏情况,就是每次选的基准数,都对比过整段.然后,将划分这段数为0和n-1,例如 1 2 3 4 1做第一次对比数,从后向前对比,比完后划分,2 3 4分成下一段,递归 这样比较就是n*(n-1)/2次~

山南地区15764564207: 在长度为n的顺序存储的线性表中删除一个元素,最坏情况下需要移动表中的元素个数 -
主父侦治咳: 是数组的个数n-1了

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网