Проверьте этот сайт:
Сравнение сортировок с анимацией
Краткий ответ: Быстрая сортировка
Более длинный ответ:
Приведенный выше сайт покажет вам сильные и слабые стороны каждого алгоритма с изящной анимацией.
Короткий ответ: нет лучшего подхода ко всему виду (но вы знали, что, поскольку вы сказали 80% времени :)), но быстрая сортировка (или 3-сторонняя быстрая сортировка), вероятно, будет лучшим общим алгоритмом, который вы можете использовать .
Это алгоритм, используемый по умолчанию для списков в .Net, поэтому вы можете просто вызвать .Sort
, если то, что у вас уже есть в списке.
На сайте, на который я указывал вам выше, есть псевдокод, если вы хотите узнать, как это реализовать.