导航:网站首页 >
如何把一个整型数组中,奇数偶数进行分离 怎么使数组进行奇偶奇偶相间排序
如何把一个整型数组中,奇数偶数进行分离 怎么使数组进行奇偶奇偶相间排序
相关问题:
匿名网友:
import java.util.Arrays;
public class Tseparation {
/**
* 如何把一个整型数组中,奇数偶数进行分离。如前面放奇数,后面放偶数
*
* 前提条件:不引入新的数组,一次for循环
*
* 基本思想:一次循环,一个指针往前走,一个指针往后走
*
* @param args
*/
public static void main(String[] args) {
int[] arrays = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int count = 0;
int last_index = arrays.length - 1;
System.out.println("数组长度: " + arrays.length);
// for中的结束条件是,前面下标位置大于后面小标位置,相当于一个从前面开始走,一个从后面开始走,中间位置相遇就不走了
for (int first_index = 0; first_index
count++;
System.out.println(" first_index: " + first_index + " - last_index: " + last_index);
int last = arrays[last_index];
int first = arrays[first_index];
// 情况1:如果前面是偶数,后面是奇数,则交换位置
if (first % 2 == 0 && last % 2 != 0) {
arrays[last_index] = first;
arrays[first_index] = last;
last_index--;// 此处注意后面的下标位置往前移,而前面的下标位置会在for循环中first_index++往后移动
} else if (first % 2 == 0 && last % 2 == 0) {
// 情况2:只有一种情况,前面偶数,后面也是偶数,需要前面下标不变,而后面需要往前移动
last_index--;
first_index--;
} else if (first % 2 != 0 && last % 2 == 0) {
// 情况3:前面是奇数 后面是偶数,这已经是我们需要的,后面下标往前面走,前面下标在for循环中往后移动
last_index--;
} else {
// 情况4:前面是奇数,后面也是奇数,后面不做任何操作,前面下标位置在for中会往后移动
// 什么也不需要干,因为后面的位置本来就不会在for中移动
}
}
System.out.println("总共循环次数:" + count);
System.out.println(Arrays.toString(arrays));
}
}
匿名网友:
1.如何把一个整型数组中,奇数偶数进行分离
答:import java.util.Arrays;public class Tseparation { /** * 如何把一个整型数组中,奇数偶数进行分离。如前面放奇数,后面放偶数 * * 前提条件:不引入新的数组,一次for循环 * * 基本思想:一次循环,一个指针往前走,一个指针往后走 * * @para...
2.怎么使数组进行奇偶奇偶相间排序
问:对于一个数组,怎么使其进行奇-偶对奇-偶对地排序,不考虑数字大小,只...
3.对一个数组进行二分查找为什么奇数偶数没影响
答:public class BinarySearchDemo { public static void main(String[] args) { int[] a = new int[]{1,5,7,9,11,18,23,48,69}; int point = new BinarySearchDemo().binarySearch(a, 23); if(point == -1) System.out.println(在数组中未查找到...
4.Labview中怎么一个数组按奇偶分成两个数组
答:把数组的索引除以二,余数为零的组成一个数组,余数为一的组成另一个数组。
5.如何把一个数组中的奇数取出,放到另一个数组中
答://这是java写的import java.util.Random;public class TestNumb {public static void main(String[] args) {int[] a = new int[15];Random r = new Random();for(int i = 0;i < 15;++i)a[i] = r.nextInt(15);int[] b = new int[15];int j = 0;Sy...
6.求解:把一个数组分奇偶性,然后奇数按从大到小顺...
答:先把数组从小到大排序 从未到头输出所有奇数 再从头到尾输出所有偶数 这样就行
7.编写程序,把数组中所有奇数放在另一个数组中并返回。
问:#include int fun(int *p,int c) { int i,b[10]={0},a=0; for(...
8.编写程序,把数组中所有奇数放在另一个数组中并输出
答:#include void main(){ int a[100],b[100]; int i,j; int m,n; printf(输入数组a的范围和b的范围:%d%d,m,n); for (i=1;i
9.在c语言中如何调用一个函数实现将数组奇数排列在左...
问:#include #define N 10 void assort(int a[],int n) { //*****...
10.VB程序设计: 将一维数组中的奇数偶数分别存入两个...
问:VB程序设计: 将一维数组中的奇数偶数分别存入两个一维动态数组中,用su...
问题推荐