1. Trang chủ
  2. » Công Nghệ Thông Tin

các sắp xếp trong cấu trúc dữ liệu và giải thuật

100 744 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 100
Dung lượng 5,91 MB

Nội dung

selection sort,insertion sort,Bubble Sort,Heap Sort,Quick Sort,Merge Sort

GV: Phạm Ngọc Nam Bộ môn KHMT – Khoa CNTT – Trường ĐH Tôn Đức Thắng 1 1 Selection Sort Insertion Sort Bubble Sort Heap Sort Quick Sort Merge Sort 2 2 3  Ý tưởng:  Chọn phần tử nhỏ nhất trong N phần tử ban đầu, đưa phần tử này về vị trí đầu dãy. Sau đó không quan tâm đến nó nữa, dãy giảm xuống N-1 phần tử… tương tự như trên bắt đầu tại vị trí thứ 2 cho đến khi dãy hiện hành chỉ còn 1 phần tử.  Các bước thực hiện như sau:  B1: i = 0  B2: tìm phần tử a[min] nhỏ nhất trong dãy hiện hành từ a[i] đến a[n-1]  B3: hoán vị a[min] với a[i]  B4: nếu i < n-1 thì i = i +1 lặp lại B2 ngược lại dừng thuật toán. 3 4  Ví dụ cho dãy số: 5 3 2 4 1 8 6 7 5 3 2 4 1 8 6 7 i= 0 1 3 2 4 5 8 6 7 i= 1 1 2 3 4 5 8 6 7 i= 2 4 5  Ví dụ cho dãy số: 5 3 2 4 1 8 6 7 1 3 2 4 5 8 6 7 i= 4 1 3 2 4 5 8 6 7 i= 3 1 3 2 4 5 8 6 7 i= 5 5 6  Ví dụ cho dãy số: 5 3 2 4 1 8 6 7 1 3 2 4 5 8 8 7 i= 6 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 6 7 7 8 8 Void SelectionSort(int a[], int n) { int min; 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; } if(a[min] < a[i]) HoanVi(a[min],a[i]); } } 9 9 10 10 . CNTT – Trường ĐH Tôn Đức Thắng 1 1 Selection Sort Insertion Sort Bubble Sort Heap Sort Quick Sort Merge Sort 2 2 3  Ý tưởng:  Chọn phần tử nhỏ nhất. 2 4 5 8 8 7 i= 6 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 6 7 7 8 8 Void SelectionSort(int a[], int n) { int min; for(int i = 0; i < n-1; i++) { min = i; for(int

Ngày đăng: 20/12/2013, 12:20

TỪ KHÓA LIÊN QUAN

w