Với thuật toán sắp xếp chèn, chứng minh rằng nếu thay toàn bộ phần Chèn A[i] vào vị trị đúng

Giải Tin học 11 Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Kết nối tri thức

Vận dụng 2 trang 122 Tin học 11: Với thuật toán sắp xếp chèn, chứng minh rằng nếu thay toàn bộ phần Chèn A[i] vào vị trị đúng của dãy con A[@), A[l], ..., A[i - 1]> bằng các lệnh sau thì chương trình vẫn đúng:

j=1

while j>0 and A[j]<A[j-1]:

 Đổi chỗ A[j] và A[j-1]

 j=j-1

Quảng cáo

Lời giải:

Để chứng minh tính đúng đắn của thuật toán sắp xếp chèn với các lệnh thay đổi trên, ta cần chứng minh hai điều kiện sau đây:

Điều kiện ban đầu (trước khi bắt đầu vòng lặp): Sau khi thực hiện lệnh j = 1, giá trị của j đang là 1, và dãy con A[0] chỉ gồm một phần tử là A[0] (vì j-1 là 0). Do đó, dãy con này đã được sắp xếp đúng.

Điều kiện duy trì (trong quá trình vòng lặp): Trong mỗi vòng lặp của while, nếu A[j] < A[j-1], ta hoán đổi giá trị của A[j] và A[j-1] bằng lệnh Đổi chỗ A[j] và A[j-1]. Sau đó, ta giảm giá trị của j đi 1 đơn vị bằng lệnh j = j - 1. Lúc này, giá trị của A[j] là giá trị của A[j-1] trước khi hoán đổi, và giá trị của A[j-1] là giá trị của A[j] trước khi hoán đổi. Điều này đồng nghĩa với việc dãy con A[0], A[1], ..., A[j-1] đã được sắp xếp đúng sau mỗi vòng lặp.

Vậy nên, dãy con A[0], A[1], ..., A[j-1] luôn được sắp xếp đúng sau mỗi vòng lặp của while, và dãy con này sẽ không bị thay đổi giá trị trong quá trình hoán đổi. Do đó, tính đúng đắn của thuật toán sắp xếp chèn vẫn được duy trì sau khi thay toàn bộ phần chèn A[i] vào vị trí đúng của dãy con A[0], A[1], ..., A[i-1] bằng các lệnh trên.

Quảng cáo

Lời giải bài tập Tin học 11 Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình hay khác:

Quảng cáo
Quảng cáo

Xem thêm lời giải bài tập Tin học lớp 11 Kết nối tri thức hay nhất, ngắn gọn khác:

Tủ sách VIETJACK shopee lớp 10-11 cho học sinh và giáo viên (cả 3 bộ sách):

Săn shopee siêu SALE :

ĐỀ THI, GIÁO ÁN, SÁCH LUYỆN THI DÀNH CHO GIÁO VIÊN VÀ PHỤ HUYNH LỚP 11

Bộ giáo án, bài giảng powerpoint, đề thi, sách dành cho giáo viên và gia sư dành cho phụ huynh tại https://tailieugiaovien.com.vn/ . Hỗ trợ zalo VietJack Official

Tổng đài hỗ trợ đăng ký : 084 283 45 85

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.


Tài liệu giáo viên