Ghi lại điểm 5 môn:9,9,5,10,8,8,5 sau đó sắ xếp theo thuật toán sắp xếp nổi bật hoặc chọn ghi lại điểm 5 môn:9,9,5,10,8,8,5 sau đó sắ xếp theo thuật toán sắp xếp nổi bật hoặc chọn
Tham khảo câu trả lời từ Trợ lý ảo Lazi Để sắp xếp dãy điểm 5 môn: 9, 9, 5, 10, 8, 8, 5, chúng ta có thể sử dụng hai thuật toán sắp xếp là sắp xếp nổi bọt (Bubble Sort) và sắp xếp chọn (Selection Sort). Dưới đây là mô tả cả hai thuật toán sắp xếp cho dãy điểm này. ### 1. Sắp xếp nổi bọt (Bubble Sort) **Thuật toán**: Sắp xếp nổi bọt so sánh từng cặp phần tử lân cận và hoán đổi chúng nếu chúng ở sai thứ tự. Quá trình này được lặp lại cho đến khi không còn phần tử nào cần hoán đổi. **Code giả**: ```python def bubble_sort(arr): n = len(arr) for i in range(n): for j in range(0, n-i-1): if arr[j] > arr[j+1]: arr[j], arr[j+1] = arr[j+1], arr[j] # Dãy điểm scores = [9, 9, 5, 10, 8, 8, 5] bubble_sort(scores) print(scores) # In ra kết quả sau khi sắp xếp ``` **Kết quả**: `[5, 5, 8, 8, 9, 9, 10]` ### 2. Sắp xếp chọn (Selection Sort) **Thuật toán**: Sắp xếp chọn tìm phần tử nhỏ nhất (hoặc lớn nhất) trong dãy chưa sắp xếp, sau đó hoán đổi nó với phần tử đầu tiên của dãy chưa sắp xếp. **Code giả**: ```python def selection_sort(arr): n = len(arr) for i in range(n): min_idx = i for j in range(i+1, n): if arr[j] < arr[min_idx]: min_idx = j arr[i], arr[min_idx] = arr[min_idx], arr[i] # Dãy điểm scores = [9, 9, 5, 10, 8, 8, 5] selection_sort(scores) print(scores) # In ra kết quả sau khi sắp xếp ``` **Kết quả**: `[5, 5, 8, 8, 9, 9, 10]` ### Kết luận Sau khi sử dụng cả hai thuật toán sắp xếp, dãy điểm 5 môn đã sắp xếp thành công và kết quả cuối cùng là `[5, 5, 8, 8, 9, 9, 10]`.