Về sort() của Python

Em đang đọc sách Tiếng Anh và nó có thuật toán sắp xếp mảng trong Python như sau:


#Finds the smallest value in an array

def findSmallest(arr):

  #Stores the smallest value

  smallest = arr[0]

  #Stores the index of the smallest value

  smallest_index = 0

  for i in range(1, len(arr)):

    if arr[i] < smallest:

      smallest_index = i

      smallest = arr[i]      

  return smallest_index

#Sort array

def selectionSort(arr):

  newArr = []

  for i in range(len(arr)):

      # Finds the smallest element in the array and adds it to the new array

      smallest = findSmallest(arr)

      newArr.append(arr.pop(smallest))

  return newArr

print(selectionSort([5, 3, 6, 2, 10]))

Chương trình trên thực chất là tạo lên phương thức sort() trong Python phải không ạ ?

Đây là một trong những phương pháp (giải thuật) sắp xếp.
Đoạn mã trên dùng giải thuật của Sắp xếp chọn (Selection sort).
Thực chất hàm sort có sẵn của Python sắp xếp theo giải thuật TimSort.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?