SelectionSort

Màu nền
Font chữ
Font size
Chiều cao dòng

  Cài đặt

Cài đặt thuật toán sắp xếp chọn trực tiếp thành hàm SelectionSort

void SelectionSort(int a[],int N )

{     int   min; // chỉ số phần tử nhỏ nhất trong dãy hiện hành

      for (int  i=0; i<N-1 ; i++)

      {

            min = i;

            for(int j = i+1; j <N ; j++)

                  if (a[j ] < a[min])

                         min = j; // ghi nhận vị trí phần tử hiện nhỏ nhất

            Hoanvi(a[min], a[i]);

      }

}

vậy tóm tắt ý tưởng thuật toán là thực hiện N-1 lượt việc đưa phần tử nhỏ nhất trong dãy hiện hành về vị trí đúng ở đầu dãy. Các bước tiến hành như sau :

Bước 1:   i = 1;

Bước 2:  Tìm phần tử a[min] nhỏ nhất trong dãy hiện hành từ  a[i] đến a[N]

Bước 3 :  Hoán vị a[min] và a[i]

Bước 4 :  Nếu  i  > N-1 thì i = i+1; Lặp lại Bước 2 

                          Ngược lại: Dừng. //N-1 phần tử đã nằm đúng vị trí.

Bạn đang đọc truyện trên: Truyen2U.Pro