Skip to main content

Sắp xếp mảng là gì?

Sắp xếp mảng là quá trình lấy các yếu tố riêng lẻ của một mảng và sắp xếp chúng theo một số loại thứ tự logic theo một loạt các quy tắc được xác định bởi người dùng.Quá trình này liên quan đến việc bước qua mảng, một phần tử tại một thời điểm và kiểm tra phần tử đó so với các phần tử xung quanh để xác định xem nó có cần được chuyển sang chỉ số khác trong mảng hay không.Khi thực hiện phân loại mảng, có một số thuật toán có thể được sử dụng, đặc biệt là khi các điều kiện sắp xếp là số trái ngược với một cái gì đó tùy ý hơn.Hầu hết các thuật toán phân loại mảng được đo bằng tốc độ và hiệu quả của chúng, với các thuật toán chậm nhất là dễ nhất để lập trình và nhanh nhất là phức tạp hơn nhiều..Quá trình bắt đầu bằng một vòng lặp sẽ bước qua từng phần tử trong mảng.Phần tử hiện tại được so sánh với phần tử tiếp theo trong mảng và, nếu phần tử tiếp theo có giá trị thấp hơn phần tử hiện tại, dữ liệu tại các chỉ số được chuyển đổi.Hạn chế của một loại bong bóng là nó cần phải lặp qua mảng nhiều lần để thực hiện tất cả các giao dịch hoán đổi cần thiết để sắp xếp mảng.Trong các triển khai cơ bản nhất, loại sẽ lặp qua toàn bộ mảng một thời gian hoàn chỉnh cho mỗi phần tử mà nó chứa.thông qua mảng.Loại này bắt đầu bằng cách lặp qua mảng để tìm phần tử có giá trị thấp nhất.Phần tử này sau đó được đặt trong chỉ mục đầu tiên của mảng và một số biến theo dõi được tăng lên.Chu kỳ sau đó lặp lại, bây giờ tìm kiếm giá trị thấp nhất tiếp theo sau đó sẽ được đặt trong chỉ số thứ hai của mảng.Quá trình tiếp tục cho đến khi phần tử giá trị cao nhất được đặt trong chỉ số cuối cùng của mảng. Một phương pháp phân loại mảng có thể hiệu quả nhưng đôi khi phức tạp để thực hiện được gọi là Quicksort.Quicksorting liên quan đến việc lấy một giá trị ở giữa tất cả các giá trị có thể được giữ trong mảng.Thuật toán đi qua tất cả các phần tử của mảng và đặt tất cả các giá trị lớn hơn số trung bình ở cuối mảng và các giá trị thấp hơn ở đầu.Quá trình này được thực hiện đệ quy trên các khối của mảng cho đến khi cuối cùng, toàn bộ mảng được sắp xếp.Giả sử giá trị trung bình được sử dụng cho mảng khá chính xác, đây có thể là một cách rất nhanh để sắp xếp. Một yếu tố có thể ảnh hưởng đến thuật toán phân loại mảng là phương tiện để dữ liệu được kiểm tra tương đương.Các số đơn giản rất dễ so sánh giá trị nào lớn hơn, nhưng điều này có thể không phải là trường hợp đối với các lớp dữ liệu phức tạp trong đó nhiều điều kiện cần được so sánh.Càng mất nhiều thời gian để so sánh xem một phần tử lớn hơn hay ít hơn một phần tử khác, thì càng mất nhiều thời gian để thuật toán sắp xếp mảng.