Thuật Toán Sắp Xếp Bằng Tráo đổi - 123doc

Nội dung

Thuật toán sắp xếp bằng tráo đổi

THUẬT TOÁN SẮP XẾP THUẬT TOÁN SẮP XẾP BẰNG TRÁO ĐỔI BẰNG TRÁO ĐỔI Lê Anh Nhật Lê Anh Nhật Email: leanhnhat@tuyenquang.edu.vn Email: leanhnhat@tuyenquang.edu.vn 2 1. Xác định bài toán 1. Xác định bài toán Input Dãy A gồm N số nguyên a Dãy A gồm N số nguyên a 1 1 , a , a 2 2 , , a , , a N N . . Dãy A được sắp xếp lại Dãy A được sắp xếp lại thành dãy không giảm. thành dãy không giảm. Output 3 2. Ý tưởng 2. Ý tưởng • Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau. • Việc đó được lặp lại cho đến khi không có sự đổi chỗ nào xảy ra nữa. ? 4 3. Thuật toán liệt kê 3. Thuật toán liệt kê Bước 1 Nhập N, các số hạng a 1 , a 2 , , a N ; Bước 2 M := N; Bước 3 Nếu M<2 thì đưa ra dãy A đã được sắp xếp, rồi kết thúc; Bước 4 M := M-1; i := 0; 5 3. Thuật toán liệt kê 3. Thuật toán liệt kê Bước 5 i := i + 1; Bước 6 Nếu i > M thì quay lại bước 3; Bước 7 Nếu a i > a i+1 thì đổi a i và a i+1 cho nhau; Bước 8 Quay lại bước 5; 6 4. Thuật toán sơ đồ khối 4. Thuật toán sơ đồ khối Nhập: N, a 1 , a 2 , , a N M := N M < 2 S M := M-1; i := 0; Đưa dãy A ra End. Begin Đ i := i+1; i > M a i > a i+1 Tráo đổi a i và a i+1 Đ S S Đ 7 5. Ví dụ mô phỏng 5. Ví dụ mô phỏng 6 2 5 3 7 8 10 7 12 4 Cho dãy số có 10 phần tử: Sắp xếp dãy trên tăng dần theo thật toán tráo đổi? 8 5. Ví dụ mô phỏng 5. Ví dụ mô phỏng 6 2 5 3 7 8 10 7 12 4 M = 9; 2 65 6 63 7 10 4 12 9 5. Ví dụ mô phỏng 5. Ví dụ mô phỏng M = 8; 2 5 3 6 7 8 7 10 4 123 5 7 8 4 10 10 5. Ví dụ mô phỏng 5. Ví dụ mô phỏng M = 7; 2 3 5 6 7 7 8 4 10 124 8 [...]... phỏng M = 2; 2 3 4 5 6 7 7 8 10 12 15 5 Ví dụ mô phỏng M = 1; Ta được dãy đã sắp xếp: 2 3 4 5 6 7 7 8 10 12 Kết thúc 16 6 Bài tập 1 2 Cho dãy số có 13 số: 3, 6, 2, 5, 13, 21, 1, 9, 10, 14, 15, 2, 8 Áp dụng thuật toán trên để sắp xếp dãy trên giảm dần? Từ thuật toán trên, sử dụng ngôn ngữ lập trình mà bạn biết để lập trình bài toán tổng quát đó? 17 . THUẬT TOÁN SẮP XẾP THUẬT TOÁN SẮP XẾP BẰNG TRÁO ĐỔI BẰNG TRÁO ĐỔI Lê Anh Nhật Lê Anh Nhật Email: leanhnhat@tuyenquang.edu.vn Email: leanhnhat@tuyenquang.edu.vn 2 1. Xác định bài toán 1 2, 8. Áp dụng thuật toán trên để sắp xếp dãy trên Áp dụng thuật toán trên để sắp xếp dãy trên giảm dần? giảm dần? 2. 2. Từ thuật toán trên, sử dụng ngôn ngữ lập Từ thuật toán trên, sử dụng. sắp xếp, rồi kết thúc; Bước 4 M := M-1; i := 0; 5 3. Thuật toán liệt kê 3. Thuật toán liệt kê Bước 5 i := i + 1; Bước 6 Nếu i > M thì quay lại bước 3; Bước 7 Nếu a i > a i+1 thì đổi

Ngày đăng: 16/10/2014, 14:38

Từ khóa » Trình Bày Thuật Toán Sắp Xếp Bằng Tráo đổi