Thuật toán Combsort

1 995 4
Thuật toán Combsort

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

Thông tin tài liệu

Combsort là một thuật toán sắp xếp ngắn gọn đơn giản, chạy trong thời gian ngắn. Thuật toán của nó khá giống với Bubble sort, điểm khác biệt là thay vì so sánh hai phần tử liên tiếp ai và ai+1, Combsort so sánh hai phần tử ai và ai+g với g ≥ 1.

COMBSORT Combsort thuật toán xếp ngắn gọn đơn giản, chạy thời gian ngắn Thuật toán giống với Bubble sort, điểm khác biệt thay so sánh hai phần tử liên tiếp ai+1, Combsort so sánh hai phần tử ai+g với g ≥ Thuật toán trình bày sau: g := n; repeat g := max(g * 10 div 13, 1); // trunc(g / 1.3) swapped := false; for i := to n-g if a[i]>a[i+g] then ( swap(a[i], a[i+g]); swapped := true; ) until (g=1) and (not swapped); 1.3 gọi hệ số thu nhỏ, sau nhiều thử nghiệm, người ta cho hệ số tối ưu cho Combsort Độ phức tạp thuật toán Combsort O(n logn) Input • Input gồm dòng chứa phần tử cần xếp Mỗi phần tử số nguyên có trị tuyệt đối nhỏ 109 Output • In dòng gồm phần tử dãy ban đầu sau xếp Sample input Sample output 50 40 30 20 10 10 20 30 40 50

Ngày đăng: 29/07/2016, 20:02

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan