Bài giảng Sắp xếp (Phần 2)
Số trang: 12
Loại file: pdf
Dung lượng: 114.89 KB
Lượt xem: 10
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Sắp xếp (Phần 2) đưa ra bài toán sắp xếp, sắp xếp nhanh (Quick sort), Bucket sort. Bài giảng phục vụ cho các bạn chuyên ngành Công nghệ thông tin và những bạn quan tâm tới lĩnh vực này. Mời các bạn tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Sắp xếp (Phần 2)S p x p (ph n 2)Lê S VinhB môn Khoa H c Máy Tính – Khoa CNTTi H c Công Ngh - HQGHNEmail: vinhbio@gmail.comBài toán s p x pInput:Danh sách cácProblem:i tư ng A = (a0,…,an)i ch các ph n tthu ư c m t danh sách m i, trong ó cácph n t ư c s p x p theo m t th t nào óOutput:A’ = (a’0,…,a’n) | a’i < a’i+1, i = 0…n - 1Ví d :A = (1 , 5, 0, 3) → (0, 1, 3, 5)A = (‘Vinh’, ‘Tuan’, ‘Anh’) → (‘Anh’, ‘Vinh’, ‘Tuan)S p x p nhanh (Quick sort)Tư tư ng c a Quick sort: Phân chia danh sách d li u c n s p x p ra thànhhai ph n “ph n bên trái” và “ph n bên ph i” sao cho các ph n tph nbên trái nh hơn ho c b ng các ph n tph n bên ph i. Sau khi phân chia,ti p t c th c hi n “quick sort trên hai ph n d li u trên.C th hơn, g i “pivot” là ph n t trung tâm c a danh sách, các ph n tnh hơn ho c b ng “pivot” thi n m bên trái “pivot”, các ph n t l n hơnho c b ng “pivot” thì n m bên ph i “pivot”Quick sortVoid quickSort (Item A[], int start, int end) {if (start < end) {pivotLocation = partition (A, start, end, A[start]);quickSort (A, start, pivotLocation – 1);quickSort (A, pivotLocation + 1, end)}}
Nội dung trích xuất từ tài liệu:
Bài giảng Sắp xếp (Phần 2)S p x p (ph n 2)Lê S VinhB môn Khoa H c Máy Tính – Khoa CNTTi H c Công Ngh - HQGHNEmail: vinhbio@gmail.comBài toán s p x pInput:Danh sách cácProblem:i tư ng A = (a0,…,an)i ch các ph n tthu ư c m t danh sách m i, trong ó cácph n t ư c s p x p theo m t th t nào óOutput:A’ = (a’0,…,a’n) | a’i < a’i+1, i = 0…n - 1Ví d :A = (1 , 5, 0, 3) → (0, 1, 3, 5)A = (‘Vinh’, ‘Tuan’, ‘Anh’) → (‘Anh’, ‘Vinh’, ‘Tuan)S p x p nhanh (Quick sort)Tư tư ng c a Quick sort: Phân chia danh sách d li u c n s p x p ra thànhhai ph n “ph n bên trái” và “ph n bên ph i” sao cho các ph n tph nbên trái nh hơn ho c b ng các ph n tph n bên ph i. Sau khi phân chia,ti p t c th c hi n “quick sort trên hai ph n d li u trên.C th hơn, g i “pivot” là ph n t trung tâm c a danh sách, các ph n tnh hơn ho c b ng “pivot” thi n m bên trái “pivot”, các ph n t l n hơnho c b ng “pivot” thì n m bên ph i “pivot”Quick sortVoid quickSort (Item A[], int start, int end) {if (start < end) {pivotLocation = partition (A, start, end, A[start]);quickSort (A, start, pivotLocation – 1);quickSort (A, pivotLocation + 1, end)}}
Tìm kiếm theo từ khóa liên quan:
Bài toán sắp xếp Bài giảng Sắp xếp Quick sort Bucket sort Sắp xếp nhanh Thuật toán sắp xếpGợ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 -
Thuật toán Algorithms (Phần 56)
10 trang 24 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 1)
10 trang 23 0 0 -
Mô hình Toán học rời rạc ứng dụng trong tin học: Phần 2
362 trang 23 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 3 - Trường ĐH Văn Lang
33 trang 21 0 0 -
Giáo trình Lý thuyết và bài tập Pascal nâng cao - NXB Thống kê
436 trang 20 0 0 -
Giáo trình Cấu trúc dữ liệu và giải thuật - ĐH Kinh tế Kỹ thuật Công nghiệp
92 trang 20 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