1. Trang chủ
  2. » Công Nghệ Thông Tin

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

17 4,6K 8

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 464,5 KB

Nội dung

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

Trang 1

THUẬT TOÁN SẮP XẾP

BẰNG TRÁO ĐỔI

Lê Anh Nhật Email: leanhnhat@tuyenquang.edu.vn

Trang 2

1 Xác định bài toán Input Dãy A gồm N số nguyên a1, a2, , aN.

Dãy A được sắp xếp lại thành dãy không giảm.

Output

Trang 3

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

?

Trang 4

3 Thuật toán liệt kê

Bước 1 Nhập N, các số hạng a1, a2, , aN;

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;

Trang 5

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 ai > ai+1 thì đổi ai và ai+1 cho nhau;

Bước 8 Quay lại bước 5;

Trang 6

4 Thuật toán sơ đồ khối

Nhập: N, a1, a2, , aN

M := N

M < 2 S

M := M-1; i := 0; Đưa dãy A ra

End.

Begin

Đ

i := i+1;

i > M

ai > ai+1 Tráo đổi ai và ai+1

Đ

S

S

Đ

Trang 7

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ử:

Trang 8

5 Ví dụ mô phỏng

6 2 5 3 7 8 10 7 12 4

M = 9;

2 65 6 3 6 7 10 4 12

Trang 9

5 Ví dụ mô phỏng

M = 8;

2 5 3 3 5 6 7 8 7 8 7 10 4 12 4 10

Trang 10

5 Ví dụ mô phỏng

M = 7;

2 3 5 6 7 7 4 8 4 10 12 8

Trang 11

5 Ví dụ mô phỏng

M = 6;

2 3 5 6 7 7 4 7 4 8 10 12

Trang 12

5 Ví dụ mô phỏng

M = 5;

2 3 5 6 7 4 4 7 7 8 10 12

Trang 13

5 Ví dụ mô phỏng

M = 4;

2 3 5 6 4 4 6 7 7 8 10 12

Trang 14

5 Ví dụ mô phỏng

M = 3;

2 3 5 4 4 5 6 7 7 8 10 12

Trang 15

5 Ví dụ mô phỏng

M = 2;

2 3 4 5 6 7 7 8 10 12

Trang 16

5 Ví dụ mô phỏng

M = 1;

2 3 4 5 6 7 7 8 10 12

Ta được dãy đã sắp xếp:

Kết thúc.

Trang 17

6 Bài tập

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?

trình mà bạn biết để lập trình bài toán tổng quát đó?

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

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w