有關繼承,多型 排序演算法之選擇排序的文章

2021-10-08 18:09:41 字數 963 閱讀 9391

選擇排序:

使用0索引的元素依次和後面索引的元素比較,小的往前放

第一次比較完畢,最小值出現在最小索引處!

50                 62                   49                    38                  81

0                   1                      2                        3                     4

public class arraydemo1 ;

printarray(arr);

switchsort(arr);

}//選擇排序

public static void switchsort(intarr) ;

匿名內部類   好處:

省去繁雜**,不需要定義類裡面的子類或者介面的子實現類,寫法比較簡單.

匿名內部類本質:

繼承該類或者實現了該介面的子類物件.

jdk7以前(包含jdk7),區域性內部類訪問區域性變數,區域性變數必須加入final修飾,否則報錯!

* jdk7以後,區域性變數會自動加上final,開發者不需要定義final關鍵字,為什麼要加final?

*             

*         原因:

*             1)區域性變數的生命週期,隨著方法呼叫而存在,隨著方法呼叫完畢而消失,

*2)在當前外部類成員方法中,建立區域性內部類物件,來訪問裡面的區域性變數,堆記憶體不會立即被釋放

//定義外部類

class outer}}

}

*3)繼續使用這個區域性變數,需要將這個變數定義為常量,常駐記憶體---->以便區域性內部類物件對該區域性變數的訪問!

排序演算法 排序演算法之選擇排序

最近在學習排序演算法,就排序演算法中的四大經典排序 氣泡排序 快速排序 選擇排序 插入排序。會出一系列的講解排序演算法的部落格。今天繼快速排序之後整理一下選擇排序。選擇排序,就是從一列未排序的陣列中先選出最小 最大 的數,放在陣列的第一位,第一位原來的數字放在最小的原來的位置,再選出第二小的數,放在...

排序演算法之選擇排序 選擇排序 堆排序

直接選擇排序 如下 下面 是一次迴圈同時挑選出最大和最小數,並將其與左右交換 選擇排序 void selectionsort int a,int len swap a min a left 如果最大數的下標在為left,證明要交換的最大數已經被 換到min小標所表示的位置,只需要將right和min...

排序演算法之選擇排序

選擇排序 在乙個長度為n的無序陣列中,在第一趟遍歷n個資料,找出其中最小的數值與第乙個元素交換,第二趟遍歷剩下的n 1個資料,找出其中最小的數值與第二個元素交換.第n 1趟遍歷剩下的2個資料,找出其中最小的數值與第n 1個元素交換,至此選擇排序完成。平均時間複雜度 o n2 空間複雜度 o 1 用於...