Что это за алгоритм сортировки? - PullRequest
1 голос
/ 03 июля 2010
int aux;

        for(int i=0;i<array.Count()-1;i++)
        {
            for(int j=i+1;j<array.Count();j++)
            {
                if(array[i] > array[j])
                {
                    aux = array[j];
                    array[j] = array[i];
                    array[i] = aux;
                }
            }
        }

Ответы [ 2 ]

8 голосов
/ 03 июля 2010

Это тупой выбор сортировки .Вместо того, чтобы менять array[i] на минимальный элемент после него, вы просто меняете его на каждый меньший элемент.В конце концов, правильный элемент, очевидно, окажется в правильном положении, и вы действительно напишите меньше кода.

Это намного менее эффективно, потому что выполняется больше перестановок, но в основном это сортировка выбора.

1 голос
/ 03 июля 2010

Это почти сортировка выбора, за исключением того, что вы не меняете местами минимальный оставшийся элемент с текущим элементом, но вы меняете местами каждый оставшийся элемент, который меньше текущего, с текущим элементом до тех пор, пока текущий элемент не станет минимальным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...