Bài giảng Giới thiệu các thuật toán sắp xếp
Số trang: 26
Loại file: pdf
Dung lượng: 206.94 KB
Lượt xem: 17
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Mời các bạn tham khảo Bài giảng Giới thiệu các thuật toán sắp xếp sau để nắm bắt được những kiến thức về tiếp cận sắp xếp đơn giản, tiếp cận sắp xếp độ phức tạp O(nlog(n)), sắp xếp theo cơ số, sắp xếp hòa nhập file lớn.
Nội dung trích xuất từ tài liệu:
Bài giảng Giới thiệu các thuật toán sắp xếp Giới thiệu Các thuật toán sắp xếp 1 Nội dung trình bày • Tiếp cận sắp xếp đơn giản Sắp xếp chọn Sắp xếp chèn Sắp xếp nổi bọt • Tiếp cận sắp xếp độ phức tạp O(nlog(n)) Sắp xếp theo phân đoạn (Quick sort) Sắp xếp hòa nhập Sắp xếp vung đống • Một số tiếp cận khác Sắp xếp theo cơ số Sắp xếp hòa nhập file lớn 2 Sắp xếp đếm - countingsort • Bài toán Có n phần tử cần sắp xếp là kiểu nguyên Các giá trị của phần tử không lớn hơn giá trị k • Có cách nào đó xác định được nhanh nhất phần tử x đầu vào sẽ xác định tại vị trí nào trong danh sách đầu ra • Ví dụ: Nếu kiểm tra được có 17 phần tử bé hơn phần tử x, vậy x sẽ được bắt đầu tại vị trí 18 Dùng một mảng trung gian để đếm vị trí xuất hiện của x trong dãy đầu ra 3 Sắp xếp đếm - countingsort (t) Đếm thông qua thống kê số lần xuất hiện của các phần tử Cộng dồn để xác định vị trí xuất hiện cuối của phần tử tiếp theo trong danh sách • Phân phối các giá trị theo vị trí đã xác định 4 Sắp xếp đếm – countingsort (t) • Thuật toán – countingsort (t) • Input: dãy A[0..N-1] nguyên, miền giá trị [0..k] • Output: dãy B[0..N] đã được sắp xếp 1. for(i=0->k) c[i]=0; 2. for(i=0->N-1) c[a[i]]++; 3. for(i=1->k) c[i]=c[i-1]+c[i]; 5
Nội dung trích xuất từ tài liệu:
Bài giảng Giới thiệu các thuật toán sắp xếp Giới thiệu Các thuật toán sắp xếp 1 Nội dung trình bày • Tiếp cận sắp xếp đơn giản Sắp xếp chọn Sắp xếp chèn Sắp xếp nổi bọt • Tiếp cận sắp xếp độ phức tạp O(nlog(n)) Sắp xếp theo phân đoạn (Quick sort) Sắp xếp hòa nhập Sắp xếp vung đống • Một số tiếp cận khác Sắp xếp theo cơ số Sắp xếp hòa nhập file lớn 2 Sắp xếp đếm - countingsort • Bài toán Có n phần tử cần sắp xếp là kiểu nguyên Các giá trị của phần tử không lớn hơn giá trị k • Có cách nào đó xác định được nhanh nhất phần tử x đầu vào sẽ xác định tại vị trí nào trong danh sách đầu ra • Ví dụ: Nếu kiểm tra được có 17 phần tử bé hơn phần tử x, vậy x sẽ được bắt đầu tại vị trí 18 Dùng một mảng trung gian để đếm vị trí xuất hiện của x trong dãy đầu ra 3 Sắp xếp đếm - countingsort (t) Đếm thông qua thống kê số lần xuất hiện của các phần tử Cộng dồn để xác định vị trí xuất hiện cuối của phần tử tiếp theo trong danh sách • Phân phối các giá trị theo vị trí đã xác định 4 Sắp xếp đếm – countingsort (t) • Thuật toán – countingsort (t) • Input: dãy A[0..N-1] nguyên, miền giá trị [0..k] • Output: dãy B[0..N] đã được sắp xếp 1. for(i=0->k) c[i]=0; 2. for(i=0->N-1) c[a[i]]++; 3. for(i=1->k) c[i]=c[i-1]+c[i]; 5
Tìm kiếm theo từ khóa liên quan:
Thuật toán sắp xếp Bài giảng Thuật toán sắp xếp Tiếp cận sắp xếp đơn giản Tiếp cận sắp xếp độ phức tạp O Sắp xếp theo cơ số Sắp xếp hòa nhập file lớnGợi ý tài liệu liên quan:
-
Giáo án môn Tin học lớp 7 sách Kết nối tri thức: Bài 16
8 trang 35 0 0 -
Giáo trình Cấu trúc dữ liệu: Phần 2
108 trang 29 0 0 -
Bài giảng Một số thuật toán cơ bản - TS. Nguyễn Thị Bạch Tuyết
9 trang 24 0 0 -
Thuật toán Algorithms (Phần 56)
10 trang 24 0 0 -
Thuật toán Algorithms (Phần 1)
10 trang 23 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán: Phần 2 (In năm 2013)
179 trang 20 0 0 -
84 trang 19 0 0
-
Thuật toán Algorithms (Phần 3)
10 trang 19 0 0 -
Giáo trình Lý thuyết và bài tập Pascal nâng cao - NXB Thống kê
436 trang 19 0 0 -
Bài giảng Phân tích thiết kế giải thuật và cấu trúc dữ liệu: Phần 2 - ĐH CNTT&TT
36 trang 19 0 0