Bài tập  /  Bài đang cần trả lời

Hãy trình bày diễn biến từng bước của thuật toán sắp xếp chọn dần áp dụng cho dãy số

Câu 2. Hãy trình bày diễn biến từng bước của thuật toán sắp xếp chọn dần áp dụng cho dãy số {11, 70, 52, 20, 39, 18} để được dãy số giảm dần.

2 Xem trả lời
Hỏi chi tiết
24
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Thuật toán sắp xếp chọn dần (Selection Sort) là một trong những thuật toán sắp xếp đơn giản. Để sắp xếp một dãy số theo thứ tự giảm dần, chúng ta sẽ thực hiện các bước như sau:

Bắt đầu với dãy số: **{11, 70, 52, 20, 39, 18}**

### Bước 1:
Tìm phần tử lớn nhất trong dãy từ vị trí đầu đến cuối.
- Dãy: {11, 70, 52, 20, 39, 18}
- Phần tử lớn nhất là **70** tại chỉ số 1.
- Hoán đổi 70 với phần tử đầu tiên (11):
- Dãy sau khi hoán đổi: **{70, 11, 52, 20, 39, 18}**

### Bước 2:
Xem xét dãy từ vị trí thứ 2 đến cuối dãy.
- Dãy: {11, 52, 20, 39, 18}
- Phần tử lớn nhất là **52** tại chỉ số 2.
- Hoán đổi 52 với phần tử tại vị trí thứ 2 (11):
- Dãy sau khi hoán đổi: **{70, 52, 11, 20, 39, 18}**

### Bước 3:
Xem xét dãy từ vị trí thứ 3 đến cuối dãy.
- Dãy: {11, 20, 39, 18}
- Phần tử lớn nhất là **39** tại chỉ số 4.
- Hoán đổi 39 với phần tử tại vị trí thứ 3 (11):
- Dãy sau khi hoán đổi: **{70, 52, 39, 20, 11, 18}**

### Bước 4:
Xem xét dãy từ vị trí thứ 4 đến cuối dãy.
- Dãy: {20, 11, 18}
- Phần tử lớn nhất là **20** tại chỉ số 3.
- Phần tử 20 đã ở đúng vị trí, không cần hoán đổi:
- Dãy vẫn là: **{70, 52, 39, 20, 11, 18}**

### Bước 5:
Xem xét dãy từ vị trí thứ 5 đến cuối dãy.
- Dãy: {11, 18}
- Phần tử lớn nhất là **18** tại chỉ số 5.
- Hoán đổi 18 với 11:
- Dãy sau khi hoán đổi: **{70, 52, 39, 20, 18, 11}**

### Bước 6:
Cuối cùng, dãy còn lại chỉ có một phần tử (11), nên không cần làm gì nữa.

### Kết quả cuối cùng:
Dãy sau khi sắp xếp theo thứ tự giảm dần là: **{70, 52, 39, 20, 18, 11}**

Tóm lại, các bước thực hiện của thuật toán sắp xếp chọn dần cho dãy số {11, 70, 52, 20, 39, 18} đã được trình bày chi tiết ở trên.
1
0
Chou
07/01 20:37:55
+5đ tặng
Bước 1:
Dãy ban đầu: {11, 70, 52, 20, 39, 18}
Tìm phần tử lớn nhất trong toàn bộ dãy: 70
Đổi chỗ 70 với phần tử đầu tiên (11): {70, 11, 52, 20, 39, 18}
Bước 2:
Dãy hiện tại: {70, 11, 52, 20, 39, 18}
Tìm phần tử lớn nhất trong phần còn lại của dãy (từ vị trí thứ 2 trở đi): 52
Đổi chỗ 52 với phần tử thứ hai (11): {70, 52, 11, 20, 39, 18}
Bước 3:
Dãy hiện tại: {70, 52, 11, 20, 39, 18}
Tìm phần tử lớn nhất trong phần còn lại của dãy (từ vị trí thứ 3 trở đi): 39
Đổi chỗ 39 với phần tử thứ ba (11): {70, 52, 39, 20, 11, 18}
Bước 4:
Dãy hiện tại: {70, 52, 39, 20, 11, 18}
Tìm phần tử lớn nhất trong phần còn lại của dãy (từ vị trí thứ 4 trở đi): 20
Đổi chỗ 20 với chính nó (20): {70, 52, 39, 20, 11, 18} (Không có sự thay đổi vị trí)
Bước 5:
Dãy hiện tại: {70, 52, 39, 20, 11, 18}
Tìm phần tử lớn nhất trong phần còn lại của dãy (từ vị trí thứ 5 trở đi): 18
Đổi chỗ 18 với phần tử thứ năm (11): {70, 52, 39, 20, 18, 11}
Kết quả:
Dãy số sau khi được sắp xếp giảm dần bằng thuật toán sắp xếp chọn: {70, 52, 39, 20, 18, 11}

 

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng nhập tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập
1
0
Đặng Hải Đăng
07/01 20:38:07
+3đ tặng

Thuật toán sắp xếp chọn dần (Selection Sort) cho dãy số {11, 70, 52, 20, 39, 18} theo thứ tự giảm dần:

Bước 1: Chọn phần tử lớn nhất trong dãy và đổi chỗ với phần tử đầu tiên.

Dãy ban đầu: {11, 70, 52, 20, 39, 18}
Phần tử lớn nhất: 70
Đổi chỗ: {70, 11, 52, 20, 39, 18}
Bước 2: Chọn phần tử lớn nhất từ phần còn lại (dãy con {11, 52, 20, 39, 18}) và đổi chỗ với phần tử thứ hai.

Dãy con: {11, 52, 20, 39, 18}
Phần tử lớn nhất: 52
Đổi chỗ: {70, 52, 11, 20, 39, 18}
Bước 3: Chọn phần tử lớn nhất từ phần còn lại (dãy con {11, 20, 39, 18}) và đổi chỗ với phần tử thứ ba.

Dãy con: {11, 20, 39, 18}
Phần tử lớn nhất: 39
Đổi chỗ: {70, 52, 39, 20, 11, 18}
Bước 4: Chọn phần tử lớn nhất từ phần còn lại (dãy con {20, 11, 18}) và đổi chỗ với phần tử thứ tư.

Dãy con: {20, 11, 18}
Phần tử lớn nhất: 20
Đổi chỗ: {70, 52, 39, 20, 11, 18}
Bước 5: Chọn phần tử lớn nhất từ phần còn lại (dãy con {11, 18}) và đổi chỗ với phần tử thứ năm.

Dãy con: {11, 18}
Phần tử lớn nhất: 18
Đổi chỗ: {70, 52, 39, 20, 18, 11}
Bước 6: Chọn phần tử còn lại (11) vì nó là phần tử cuối cùng.

Kết quả: {70, 52, 39, 20, 18, 11}

Dãy số đã được sắp xếp giảm dần.


 

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
Gửi câu hỏi
×