Có rất nhiều thuật toán khác nhau, nếu bạn cần có thể tìm hiểu bằng các từ khóa quick sort, bubble sort, select sort, insertion sort,... Mỗi thuật toán có nhiều ưu và nhược điểm khác nhau. Tùy thuộc vào nhu cầu của bạn mà sử dụng. Bạn không yêu cầu thuật toán nào nên mình sẽ trình bày 1 thuật toán sắp xếp cơ bản (không có tên hehe). Cách viết thuật toán của mình chỉ theo dạng hiểu, không đúng cấu trúc đâu bạn nha.
Bước 1: Nhập mảng a, gán n = số giá trị của mạng
Bước 2: Gán i = 1
Bước 3: Nếu i >= n, kết thúc phần sắp xếp.
Bước 4: Gán j = i + 1.
Bước 5: Nếu j > n: i = i + 1 và quay lại bước 3.
Bước 6: Nếu a(i) < a(j), đổi giá trị tại 2 vị tri a(i) và a(j)
Bước 7: j = j + 1 và quay lại bước 5
Bạn có thể chạy thử trên giấy để xem cách hoạt động của thuật toán. Nếu có thắc mắc thì cứ trả lời tại chủ đề này, mình và mọi người sẽ cùng bàn luận.
Thân!