生活随笔
收集整理的這篇文章主要介紹了
直接排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:使用直接排序法將下列數組(從小到大排序)
思路:第一次:使用索引值為0的元素與其他位置的元素挨個比較一次,如果發現比0號索引值的元素小的,那么交換位置,第一輪下來最小值被放在了第一位
第二次:將索引值為1的元素與其他位置的元素挨個比較一次,如果發現比1號索引值的元素小的,那么交換位置,第二輪下來第二小的值被放在了第二位
...這樣依次循環比較n-1次,實現有小到大的排序操作
1 public class Choosesort {
2 public static void main(String[] args) {
3 int[] arr=
new int[]{12,5,17,8,9
};
4 //排序前的數組
5 System.out.println("排序前的數組元素為:"
);
6 for (
int i = 0; i <arr.length ; i++
) {
7 System.out.print(arr[i]+" "
);
8 }
9 //選擇排序法(將最小的依次選擇出來放在合適的位置上)
10 for (
int i = 0; i <arr.length-1 ; i++) {
//控制排序的輪數,輪數等于arr.length-1
11 //下面這個for循環執行一次,就會把最小值放在第一位,執行兩次就會把第二小的值放在第二位,這樣依次實現排序
12 for (
int j = i+1; j <arr.length ; j++
) {
13 if(arr[i]>
arr[j]){
14 arr[i]=arr[i]+
arr[j];
15 arr[j]=arr[i]-
arr[j];
16 arr[i]=arr[i]-
arr[j];
17 }
18
19 }
20 }
21
22 //輸出拍好序之后的數組
23 System.out.println();
24 System.out.println("排好序之后的數組元素為:"
);
25 for (
int i = 0; i <arr.length ; i++
) {
26 System.out.print(arr[i]+" "
);
27 }
28 }
29 }
30 /*運行結果
31 排序前的數組元素為:
32 12 5 17 8 9
33 排好序之后的數組元素為:
34 5 8 9 12 17
35 */ ?
轉載于:https://www.cnblogs.com/parkour1026/p/10796369.html
總結
以上是生活随笔為你收集整理的直接排序的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。