首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设一个一维整数数组中有n(n>1)个元素,设计一个在时间和空间两方面尽可能高效的算法,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求: 根据设计思想,采用C、C++或Java语言描述算法,关键之处给出注释。
设一个一维整数数组中有n(n>1)个元素,设计一个在时间和空间两方面尽可能高效的算法,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求: 根据设计思想,采用C、C++或Java语言描述算法,关键之处给出注释。
admin
2014-04-17
54
问题
设一个一维整数数组中有n(n>1)个元素,设计一个在时间和空间两方面尽可能高效的算法,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求:
根据设计思想,采用C、C++或Java语言描述算法,关键之处给出注释。
选项
答案
算法实现如下: void ReorderOddEven(int a[],n) { int left=0; //定义指向数组第一个元素的下标变量 int right=n一1; //定义指向数组最后一个元素的下标变量 int temp; //元素交换的中间变量 while (left<right) //当两个下标相遇后才结束循环 { if(a[left]%2!=0) //如果left指向的元素是奇数,则left下标向后移动一位 { left++; continue; } if(a[right]%2==0) //如果right指向的元素是偶数,则right下标向左移动一位 { right--; continue; } //交换元素 temp=a[left]; a[left]=a[right]; a[right]=temp; //交换完成后,两边的下标各移动一位 left++; right--; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/Xixi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
在努力纠正“文化大革命”错误的过程中,遇到的严重障碍是()
印度孔雀帝国时代,就土地占有情况而言,占全国土地的绝大部分的是()。
我国古代文献中记载了许多有关部落和部落联盟之间发生大规模战争的传说,如炎帝和黄帝两个部落曾战于(),结果黄帝取得了胜利。
我国对农业社会主义改造的基本原则和方针及其改造完成的意义。
近代自然科学产生的条件及其发展情况。
格拉古兄弟改革的内容和结果是什么?
《道威斯计划》的实施所产生的直接结果是()。
试析巴以冲突的历史根源。
印度列国时代出现了16个国家,其中大部分是王国,只有少数的共和国。下列属于共和国的是()。
随机试题
简析第二次世界大战爆发的原因。(四川师范大学2013年历史学基础真题)
具有噻唑烷二酮结构的药物有
球后视神经炎不包括
下列费用中,()属于企业财务费用。
[2007年第57题]计算机房对建筑装饰装修基本的特殊要求是:
( )是指当事人在其活着时通过选择遗产筹划工具和制定遗产计划,将拥有或控制的各种资产或负债进行安排,从而保证在自己去世或丧失行为能力时尽可能实现个人为其家庭(也可能是他人)所确定目标的安排。
用人单位应当建立职工名册备查。职工名册应当包括()。
冬天,在四周围都是山地的这里,看见太阳的日子真是太少了。今天,难得雾是这么稀薄,空中融融地混合着金黄的阳光,把地上的一切,好像也照上一层欢笑的颜色。我走出了这黝暗的小屋,我扬着脖子,张开了我的双臂,恨不得要把谁紧紧地拥抱起来。由一条小径
下列叙述中正确的是
[A]SetaGoodExampleforYourKids[B]BuildYouKids’WorkSkills[C]PlaceTimeLimitsonLeisureActivities[D]Talkabout
最新回复
(
0
)