در مرتبسازی انتخابی هر بار بزرگترین (کوچکترین) عنصر قسمت مرتب نشده را پیدا میکنیم و جای آن را با آخرین عنصر قسمت مرتب نشده عوض میکنیم.
قطعه کد زیر الگوریتم مرتبسازی انتخابی را به شیوهی صعودی نشان میدهد:
// .........
for (i = n-1; i > 0; i--) {
max_index = i; // suppose that number existed
// in numbers[i] is maximum
for (j = 0; j < i; j++)
if (numbers[j] > numbers[max_index])
max_index = j;
if (max_index != i)
swap(numbers, i, max_index);
}
// ..........
⬅ پیادهسازی الگوریتم selection sort به صورت صعودی
⬅ پیادهسازی الگوریتم selection sort به صورت نزولی
⬅ پیاده سازی الگوریتم selection sort به صورت صعودی با پاسکال