如何将数组中的数字按照从小到大的顺序排列??? | 您所在的位置:网站首页 › java输入五个数从小到大排序 › 如何将数组中的数字按照从小到大的顺序排列??? |
经过视频的学习,总结了一下,大神们请指教。。。。 如果要将数组中的数字按照从小到大的顺序排列。 完成思路:将最小的数字放在数组的第一项,将第二小的数组放在第二项,一直重复,知道完成。 那么如何将最小的数字放在数组索引为0的位置呢? 示例:
for(int j = i+1;j < arrays.Length;j++) { if (arrays[0] > arrays[j]) { int temp = arrays[0]; arrays[0] = arrays[j]; arrays[j] = temp; } } 实现方法:把第一个位置的数字拿出来依次和后面位置的数字进行比较,如果后面位置的数字大,则交换位置。 代码实现分析:重复的动作,如果索引为0的数字比索引为j的数字大,则交换。j的取值范围是1-arrays.Length-1. int i = ?;//当前处理的数组索引位 for(int j = i + 1;j < arrays.Length;j++) { if (arrays[i] > arrays[j]) { int temp = arrays[i]; arrays[i] = arrays[j]; arrays[j] = temp; } } 由于示例中的0表示为当前处理的数组索引,则提出来形成一个变量i,变量j的位置则应该是从索引i的下一项开始。 示例:用交换顺序来实现对int类型的数据arrays从小到大排序: for(int i = 0;i < arrays.Length - 1; i++) { for(int j = i + 1;j < arrays.Length;i++) { if (arrays[i] > arrays[j]) { int temp = arrays[i]; arrays[i] = arrays[j]; arrays[j] = temp; } } } 同理,对double类型的数组arrays从小到大排序示例: for(int i = 0;i < arrays.Length - 1;i++) { for (int j = i + 1;j < arrays.Length;j++) { if (arrays[i] < arrays[j]) { double temp = arrays[i]; arrays[i] = arrays[j]; arrays[j] = temp; } } }
上面总结的一些可能会有错误,大神们看到了麻烦告知,感激不尽。。。 |
CopyRight 2018-2019 实验室设备网 版权所有 |