Viết lại các thuật toán sắp xếp trong bài theo thứ tự giảm dần

Vận dụng 1 trang 103 Tin học 11: Viết lại các thuật toán sắp xếp trong bài theo thứ tự giảm dần.

Trả lời

1.Thuật toán sắp xếp chèn:

def insertion_sort(arr):

 n = len(arr)

 for i in range(1, n):

  key = arr[i]

  j = i - 1

  while j >= 0 and arr[j] < key:

   arr[j + 1] = arr[j]

   j -= 1

  arr[j + 1] = key

 return arr

2. Thuật toán sắp xếp chọn :

def selection_sort(arr):

 n = len(arr)

 for i in range(n - 1):

  max_idx = i

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

   if arr[j] > arr[max_idx]:

    max_idx = j

  arr[i], arr[max_idx] = arr[max_idx], arr[i]

 return arr

3.Thuật toán sắp xếp nổi bọt:

def bubble_sort(arr):

 n = len(arr)

 for i in range(n - 1):

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

   if arr[j] < arr[j + 1]:

    arr[j], arr[j + 1] = arr[j + 1], arr[j]

 return arr

Xem thêm lời giải bài tập SGK Tin học 11 Kết nối tri thức hay, chi tiết khác:

 

Câu hỏi cùng chủ đề

Xem tất cả