Tel: 024.7300.7989 - Phone: 1800.6947 (Thời gian hỗ trợ từ 7h đến 22h)

Giỏ hàng của tôi

Viết ba chương trình mô phỏng các thuật toán sắp xếp chèn, sắp xếp

Câu hỏi số 769244:
Vận dụng

Viết ba chương trình mô phỏng các thuật toán sắp xếp chèn, sắp xếp chọn và sắp xếp nổi bọt mà em đã biết. Cho biết thời gian thực hiện các chương trình trên với bộ dữ liệu đầu vào là dãy A = [3, 1, 0, 10, 13, 16, 9, 7, 5, 11].

Quảng cáo

Câu hỏi:769244
Giải chi tiết

Chương trình gộp tính thời gian thực tế cho ba thuật toán sắp xếp chèn, sắp xếp chọn, sắp xếp nổi bọt như sau:

1    from time import perf_counter

2    def InsertionSort(A):

3          n = len(A)

4          for i in range(1,n):

5               value = A[i]

6               j = i-1

7               while j >= 0 and A[j] > value:

8                    A[j+1] = A[j]

9                    j = j – 1

10              A[j+1] = value

11   deft SelectionSort(A):

12         n = len(A)

13         for i in range(n-1):

14              iMin = i

15              for j in range(i+1,n):

16                   if A[j] < A[iMin]:

17                         iMin = j

18                         A[i],A[iMin] = A[iMin],A[i]

19   deft BubbleSort(A):

20         n = len(A)

21         for i in range(n-1):

22              for j in range(n-1-i):

23                   if A[j] > A[j+1]:

24                         A[j],A[j+1] = A[j+1],A[j]

25

26

27   A = [3, 1, 0, 10, 13, 16, 9, 7, 5, 11]

28   A1,A2,A3 = A.copy(),A.copy(), A.copy()

29   t1 = perf_counter()

30   InsertionSort(A1)

31   t2 = perf_counter()

32   print("Sắp xếp chèn:",t2-t1)

33   t1 = perf_counter()

34   SelectionSort(A)

35   t2 = perf_counter()

36   print("sắp xếp chọn:",t2-t1)

37   t1 = perf_counter()

38   BubbleSort(A)

39   t2 = perf_counter()

40   print("sắp xếp nổi bọt:",t2-t1)

Group 2K8 ôn Thi ĐGNL & ĐGTD Miễn Phí

>>  2K8 Chú ý! Lộ Trình Sun 2026 - 3IN1 - 1 lộ trình ôn 3 kì thi (Luyện thi 26+ TN THPT, 90+ ĐGNL HN, 900+ ĐGNL HCM, 70+ ĐGTD - Click xem ngay) tại Tuyensinh247.com.Đầy đủ theo 3 đầu sách, Thầy Cô giáo giỏi, luyện thi theo 3 giai đoạn: Nền tảng lớp 12, Luyện thi chuyên sâu, Luyện đề đủ dạng đáp ứng mọi kì thi.

Hỗ trợ - Hướng dẫn

  • 024.7300.7989
  • 1800.6947 free

(Thời gian hỗ trợ từ 7h đến 22h)
Email: lienhe@tuyensinh247.com