设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 03:54:29
设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数

设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数
设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)
设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数存放在数组的后半部分.要求尽可能的少用临时单元并使用时间少.(利用C语言)

设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数
/* 
\x09i从a的首部往后移动,j从a的尾部往前移动,若a[i]为偶数且a[j]为奇数,则交换,否则根据情况移动i或j.
\x09时间复杂度:length(a).
\x09空间复杂度:数组a.

\x09个人认为这是时空效率最好的,其他网友不服来辩.

*/

#include <iostream>
using namespace std;
const int n = 10;
int main()
{
\x09int a[n] = {3,18,2,12,12,5,6,7,8,9};
\x09int i = 0;
\x09int j = n;
\x09while (i < j)
\x09{

\x09\x09if (0 == a[i] % 2 && 1 == a[j] % 2)
\x09\x09{
\x09\x09\x09swap(a[i],a[j]);\x09//a[i] = a[i] ^ a[j]; a[j] = a[i] ^ a[j]; a[i] = a[i] ^ a[j];
\x09\x09\x09i++;
\x09\x09\x09j--;
\x09\x09\x09continue;
\x09\x09}


\x09\x09if (1 == a[i] % 2)
\x09\x09{
\x09\x09\x09i++;
\x09\x09}

\x09\x09if (0 == a[j] % 2)
\x09\x09{
\x09\x09\x09j--;
\x09\x09}
\x09}

\x09for (i = 0; i < n; i++)
\x09{
\x09\x09cout <<a[i] <<" ";
\x09}
\x09cout <<endl;
\x09return 0;
}



(如有任何疑问请追问,我一直在线)

设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分.(利用C语言)设一系列正整数存放在一个数组中,试设计算法,将所有奇数存放在数组的前半部分,将所有的偶数 数据结构数组和广义表的一些问题1.设矩阵A是一个对称矩阵,为了节省存储,将其下三角部分按行序存放在一维数组B[1,n(n-1)/2]中,对下三角部分中任一元素ai,j(i VB随机产生10个任意的两位正整数存放在一维数组中,求数组的最大值、平均值、能实现将数据升序排列,并且 c语言编写.计算1+2+3+……+10的值,且将各个数字存放在一个数组中,输出数组的各元素的值和最后结果我是新手,麻烦给一个正确的程序.谢谢! 有15个数按小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数组中第几个元素的值. 计算素数个数【题目描述】 一个数组a[0]到a[n-1]存放有n个正整数,其中2≤n≤1000.先将a数组中的n个数从小到大排序,再计算a数组相邻两数相加a[0]+a[1],a[1]+a[2],a[2]+a[3],……,a[n-2]+a[n-1]中有几个素 用C写个编程输入一个完全由数字组成的字符串,从字符串的第一个字符开始,每两个数字作为两位整数,存放在一维整型数组中,如果最后只剩一个数字,则将该字符作为一个整数存放在数组中.试 C语言:从键盘输入10个数存放在数组a中,再将数组a中的偶数存放在数组b中 C语言:在score数组存放有m个成绩,在函数fun中计算平均分,再将低于平均分的人数作为函数值返回,并将低于平均分的分数存放在below数组中,最后在main函数中输出below数组.例如,score数组的数据 数组有1000个元素,设为数组a[1000],存放1-1000的数值,但是现在有一个数值重复了,指扫描一遍,找出那个重复的数 有长度为n的一维数组A,将数组中负数存放在数组前部,所有正数存放在负数后面,设计算法! 从键盘输入n个整数并放到数组x中,编写一个函数,将数组x中的元素颠倒顺序后仍然存放在愿数组中.要求始终只用一个数组,并且在调用函数中输出颠倒顺序后数组x中的各个元素 有一个数组长度为100,向里面存放随机数,要求数组中没有重复的值 一道小学奥赛题求解设4个不同正整数构成的数组中,最小的数与其余三数的平均值之和为17,而最打的数与其余三数的平均值之和为29.在满足上述条件的所有数组中,其中最大数的最大值是多少 设数组R中n(n>1)个元素中有多个零元素,试设计一个算法将R中的所有非零元素依次移动到R数组的前端 输入15个正整数放数组a[15]中,将奇数放在数组前部,偶数放在数组后部 VB随机产生一个M×N二维数组(M,N缺省为4,数组元素为100以内的正整数),计算其随机产生一个M×N二维数组(M,N缺省为4,数组元素为100以内的正整数),计算其所有元素中0-9出现的次数. 下面这个程序怎么写啊 :有15个数由大到小排列存放在一个数组中,输入一个数,要求用折半查找法找出该