首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知顺序表A,在不改变顺序表中奇数号元素与偶数号元素相对位置的前提下,设计算法,将所有奇数号元素移到所有偶数号元素前。 (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。 (
已知顺序表A,在不改变顺序表中奇数号元素与偶数号元素相对位置的前提下,设计算法,将所有奇数号元素移到所有偶数号元素前。 (1)给出算法的基本设计思想。 (2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。 (
admin
2019-01-16
49
问题
已知顺序表A,在不改变顺序表中奇数号元素与偶数号元素相对位置的前提下,设计算法,将所有奇数号元素移到所有偶数号元素前。
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释。
(3)说明你所设计算法的时间复杂度和空间复杂度。
选项
答案
(1)基本的设计思想:先将偶数号元素复制到一个辅助空间,然后整理数组剩下的奇数号元素,最后将辅助空间中的元素复制到数组的后半部分,但这种思路的空间复杂度为O(n)。 另一种思路: ①在数组尾部从后往前找到第一个奇数号元素,将此元素与其前面的偶数号元素交换。这样,就形成了两个前后相连且相对顺序不变的奇数号元素“块”。 ②暂存①中“块”前面的偶数号元素,将“块”内奇数号结点依次前移,然后将暂存的偶数号结点复制到空出来的数组单元中。就形成了三个连续的奇数号元素“块”。 ③暂存②中“块”前面的偶数号元素,将“块”内奇数号结点依次前移,然后将暂存的偶数号结点复制到空出来的数组单元中。就形成了四个连续的奇数号元素“块”。 ④如此继续,直到前一步的“块”前没有元素为止。 (2)算法的设计如下: void Swap(ElemType A[],int n){ int i=n,v=1; //i为工作指针,初始假设n为奇数,v为“块”的大小 ElemType temp: //辅助变量 if(n%2==0)i=n一1; //若n为偶数,则令i为n—1 while(i>1){ //假设数组从1开始存放。当i=1时,气泡浮出水面 temp=A[i一1]; //将“块”前的偶数号元素暂存 for(int j=0;j
2)。虽然时间复杂度为O(n
2
),但因n
2
前的系数很小,实际达到的效率是很高的。算法的空间复杂度为O(1)。
解析
转载请注明原文地址:https://kaotiyun.com/show/neRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1857年,一个秘密的革命团体——“芬尼党”成立,其成立地点是()
下列各项中,《凡尔赛和约》没有做出最后规定的是()。
关于1957年的整风运动,下列不属于其内容的是()。
乾隆时期,明确规定了驻藏大臣的地位与达赖班禅同等,并实行“金瓶掣签”制度的文件是()。
根据材料,结合有关知识,回答问题:埃及的河流空了,人(可以)徒步涉过。人们找不到能行船的水。河床变成了沙滩。沙滩上没有水,河床上也没有水……一切好东西都不见了,这个地方枯竭了……土地缩小了,(但是)它的行政人员却很多。土地荒凉不毛;(但)税却很重,只有
中国共产党在敌后战场上开创的第一块根据地是()。
张居正改革期间,调任抗倭名将()镇守蓟门,对安定北方发挥了积极作用。
1945年,联合国成立之时,创始会员国共有()个国家。
雍正帝为了证明清朝统治的合理性以及自己即位的合法性,颁布了()。
在二叉树的顺序存储中,每个结点的存储位置与其父结点、左右子树结点的位置都存在一个简单的映射关系,因此可与三叉链表对应。若某二叉树共有n个结点,采用三叉链表存储时,每个结点的数据域需要d个字节,每个指针域占用4个字节,若采用顺序存储,最后一个结点下标为k(起
随机试题
局灶节段性肾小球硬化中,毛细血管袢的局灶性无细胞性硬化病变中含有哪些成分:
女,48岁。因进食时上腭疼痛且逐渐加重2月来诊。否认进刺激食物及硬物创伤史。检查:病人全身情况良好,左右侧软腭近翼颌韧带处均可见约0.5cm×0.6cm鲜红糜烂面,表面无渗出,周缘黏膜水肿发白呈云雾状,颊唇黏膜也可见云雾状水肿无糜烂。否认皮损及发病前用药史
前囟早闭常见于:前囟迟闭常见于:
个体身心发展的动因主要有三种,其中外铄论对教育在改造人的过程中所起的作用持消极悲观的态度。()
近年来,某市政府在改善市民住房条件方面采取了许多积极的措施,但是市民对于住房状况的不满却有增无减。这主要是因为近年来在改善城市住房条件方面存在许多阻力。其中,一个是城市人口的快速增加,另一个是人们对于住房条件的要求越来越高。以下各项如果为真,都能削
在人民解放军转入战略进攻之后,为了维护广大农民的利益、进一步激发他们支援解放战争的积极性。中国共产党制定和通过了《中国土地法大纲》,在这个大纲指引下解放区广大农村掀起土地制度改革运动热潮,经过土地制度改革()
所有在函数中定义的变量,连同形式参数,都属于()。
AstrongtrendintheAmericaneconomyattheendofthe19thcenturywas______.
WhatfirstinspiredMartinMiddleton’sinterestintravelling?
最新回复
(
0
)