Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Like this presentation? Why not share!

- Bài 5: Các thuật toán sắp xếp và tì... by Học Lập Trình Web 60014 views
- Giáo trình cấu trúc dữ liệu và giải... by soskmn 734 views
- Sap xep va tim kiem by acumenvn 10790 views
- Bai giang-ctdl by Phong Vân 2662 views
- Chuong 2 phan tich cac thuat toan ... by gaconne1985 3971 views
- Cuộc thi lập trình ứng dụng di động... by WinStore.vn 592 views

444 views

360 views

360 views

Published on

Published in:
Technology

No Downloads

Total views

444

On SlideShare

0

From Embeds

0

Number of Embeds

0

Shares

0

Downloads

0

Comments

0

Likes

2

No embeds

No notes for slide

- 1. Cấu trúc dữliệu và giải thuật
- 2. Tìm kiếm Merge Quick Sortnhị phân Sort
- 3. • Tìm kiếm trên Tìm mảng tăng dần.kiếm nhị phân • 30 lần tìm kiếm cho 1 tỉ dữ liệu. Merge • Thuật toán sắp Sort xếp nhanh. • Thuật toán sắp Quick xếp nhanh Sort nhất.
- 4. Minh Họa Thuật Toán Tìm Nhị Phân
- 5. Minh Họa Thuật Toán Tìm Nhị PhânTìm thấy 2 tại vị trí 1 X=2 L M R 1 2 4 6 7 9 10 0 1 2 3 4 5 6
- 6. Minh Họa Thuật Toán Tìm Nhị Phân (tt) X=-1 L M R 1 2 4 6 7 9 10 0 1 2 3 4 5 6L=0R=-1 => không tìm thấy X=-1
- 7. Minh Họa Thuật Toán Tìm Nhị Phân (tt)Cho mảng sau: 2 2 2 3 7 8 9 10 15.1. Tìm phần tử k=15.2. Tìm phần tử k=2 và cho biết số 2 được tìm thấy nằm ở đâu trong mảng.
- 8. Merge Sort – thuật toán
- 9. Merge Sort – Ví Dụ k=1Phân phối luân phiên 0 1 2 3 4 5 6 7 12 2 8 5 1 6 4 15
- 10. Merge Sort – Ví Dụk = 1 Phân phối luân phiên 0 1 2 3 4 5 6 712 2 8 5 1 6 4 15
- 11. Merge Sort – Ví DụTrộn từng cặp đường chạy0 1 2 3 4 5 6 712 8 1 42 5 6 15
- 12. Merge Sort – Ví Dụk = 1 Trộn từng cặp đường chạy0 1 2 3 4 5 6 712 8 1 42 5 6 15
- 13. Merge Sort – Ví Dụk = 2 Phân phối luân phiên2 12 5 8 1 6 4 150 1 2 3 4 5 6 7
- 14. Merge Sort – Ví Dụk = 2 Trộn từng cặp đường chạy0 1 2 3 4 5 6 72 12 1 65 8 4 15
- 15. Merge Sort – Ví Dụk = 2 Trộn từng cặp đường chạy 0 1 2 3 4 5 6 7 2 12 1 6 5 8 4 15
- 16. Merge Sort – Ví Dụk = 4 Phân phối luân phiên2 5 8 12 1 4 6 150 1 2 3 4 5 6 7
- 17. Merge Sort – Ví Dụk = 4 Trộn từng cặp đường chạy 0 1 2 3 4 5 6 7 2 5 8 12 1 4 6 15
- 18. Merge Sort – Ví Dụk = 4 Trộn từng cặp đường chạy 0 1 2 3 4 5 6 7 2 5 8 12 1 4 6 15
- 19. Merge Sort – Ví Dụk = 80 1 2 3 4 5 6 71 2 4 5 6 8 12 15
- 20. Merge Sort – Ví Dụ1 2 3 4 5 6 7 81 2 4 5 6 8 12 15
- 21. Merge Sort – Ví DụCho ví dụ
- 22. Quick Sort1. X là phần tử nằm giữa mảng.2. Tìm các phần tử bên trái X mà lớn hơn X, đưa các phần tử nàyvề phía bên phải X.3. Tìm các phần tử bên phải X mà nhỏ hơn X, đưa các phần tử nàyvề bên trái X. Mảng chính sẽ phân hoạch thành 3 phần: • Phần 1: Gồm các phần tử có giá trị bé hơn x • Phần 2: Gồm các phần tử có giá trị bằng x • Phần 3: Gồm các phần tử có giá trị lớn hơn x Lặp lại các bước trên với phần 1 và phần 2
- 23. Quick Sort
- 24. Quick Sort – Ví Dụ • Cho dãy số a: 12 2 8 5 1 6 4 15Phân hoạch đoạn l =0, r = 7: x = a[3] = 5 12 2 8 5 1 6 4 15 l=0 r=7
- 25. Quick Sort – Ví Dụ 4 2 8 5 1 6 12 15 i=0 j=6l=0 r=7 4 2 8 5 1 6 12 15 i=1 i=2l=0 j=3 j=4 j=5 r=7
- 26. Quick Sort – Ví Dụ• Phân hoạch đoạn l = 0, r = 2:4 2 1 5 8 6 12 15l=0 r =3i=0 j=2
- 27. Quick Sort – Ví Dụ• Phân hoạch đoạn l =4, r = 7:1 2 4 5 8 6 12 15 l=4 r =7 i=4 j=6 j=6 j=71 2 4 5 i=6 4 8 12 15 l=4 r =7
- 28. Quick Sort – Ví Dụ• Phân hoạch đoạn l =6, r = 7:1 2 4 5 6 8 12 15
- 29. Quick Sortvoid QuickSort(int a[], int left, int right){ int i, j, x; x = a[(left+right)/2]; i = left; j = right; do { while(a[i] < x) i++; while(a[j] > x) j--; if(i <= j) { Swap(a[i],a[j]); i++ ; j--; } } while(i <= j); if(left<j) QuickSort(a, left, j); if(i<right) QuickSort(a, i, right);}
- 30. Quick Sort – Ví Dụ Phân hoạch đọan [0,7] i j 0 1 2 3 4 5 6 7 12 2 8 5 5 1 6 4 15left X righ t
- 31. Quick Sort – Ví Dụ Phân hoạch đọan [0,7] X 5 i j 0 1 2 3 4 5 6 7 4 2 8 5 1 6 12 15 left righ t
- 32. Quick Sort – Ví Dụ Phân hoạch đọan [0,2] j i 0 1 2 3 4 5 6 7 4 2 1 5 8 6 12 15 left righ t
- 33. Phân hoạch đọan [0,2] i j 0 1 2 3 4 5 6 7 4 2 1 5 8 6 12 15 X left righ t
- 34. Quick Sort – Ví Dụ Phân hoạch đọan [4,7] i j 0 1 2 3 4 5 6 7 1 2 4 5 8 6 12 15 X left righ t
- 35. Quick Sort – Ví Dụ Phân hoạch đọan [5,7] j i 0 1 2 3 4 5 6 7 1 2 4 5 6 8 12 15 left righ t
- 36. Quick Sort – Ví Dụ Phân hoạch đọan [5,7] i j 0 1 2 3 4 5 6 7 1 2 4 5 6 8 12 15 left righ t
- 37. Quick Sort – Ví Dụ Quick Sort – Ví Dụ0 1 2 3 4 5 6 71 2 4 5 6 8 12 15
- 38. Quick Sort – Ví DụCho ví dụ

No public clipboards found for this slide

Be the first to comment