C++データ構造とアルゴリズム選択ソートSelectSort()
1214 ワード
3、ソートの選択
現在並べ替えられていない数から最小の数を選択し、並べ替えられた配列リストの最後に配置します.
ポイント:最小値を選択し、左に置きます
現在並べ替えられていない数から最小の数を選択し、並べ替えられた配列リストの最後に配置します.
ポイント:最小値を選択し、左に置きます
void SelectSort(int* List, int N) // N = , 。
{
// n
for (int i = 0; i < N; i++)
{
int min = i; // min ( / ), , i 。
/* , ,
0 , i + 1 */
for (int j = i + 1; j < N; j++)
{
// , 。
if (List[j] < List[min])
{
// j 。( )
min = j;
}
}
/* , ,
, i++, List[min] List[i] 。 */
// min , i 。
Swap(List[i], List[min]);
}
}
int main()
{
int Num[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 }; //
int Num_Size = sizeof(Num) / sizeof(int); //
cout << " :";
for (int i = 0; i < Num_Size; ++i)
{
cout << Num[i] << '\t';
}
cout << endl;
cout << " :";
SeleteSort(Num, Num_Size);
for (int i = 0; i < Num_Size; ++i)
{
cout << Num[i] << '\t';
}
}