Как я могу изменить сортировку вставки для обработки двух элементов за раз?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я могу изменить сортировку вставки для обработки двух элементов за раз?

Сообщение Anonymous »

У кого -нибудь есть объяснение о том, как делать сортировку вставки с двумя элементами за раз вместо одного? Мне нужно отсортировать их как самые маленькие и самые большие, сдвиньте отсортированную часть второй части, если наибольшее меньше, а затем вставьте наименьшие нормально < /p>
Это мое домашнее задание: < /p>

При реализации алгоритма часто бывает несколько способов сделать
it. Часто можно использовать «трюки», которые сэкономили время. Алгоритм
будет поддерживать тот же порядок сложности, но постоянный
в термине, который растут самым быстрым, будет уменьшена. Вам поручено
с изучением того, оказывают ли такие трюки значительное влияние на
sort Sort. > отличается от того, что было представлено в лекции). Начало
Inner Loop может выглядеть так: < /p>
while (j >= 0 && temp.compareTo(a[j]) < 0)
< /code>
, где первая часть условия гарантирует, что мы остаемся в пределах массива
, а вторая часть указывает, что мы еще не нашли правильную позицию
для элемент, который должен быть вставлен. вставить элемент в позицию 0 в множество. Одним из преимуществ внедрения
является то, что он стабилен, что означает, что равные элементы
сохраняют свой относительный порядок после сортировки. Чтобы сохранить это свойство,
мы можем пересечь массив справа налево и обмениваться смежными элементами
, если они находятся в неправильном порядке относительно друг друга. Этот
обеспечит наименьший элемент в начале. > влияет на время исполнения. Пусть количество элементов будет достаточно большим
, чтобы сортировка занимает не менее 5 секунд. Кратко напишите
Down Your Newsations. Для генерации случайных данных и времени измерения
см. Конец назначения. Один элемент за раз,
вы вставляете два. Эти два элемента, которые должны быть вставлены, называются
«наименьшие» и «самые большие» (где наименьшее
< /li>
< /ol>
< /blockquote>

Подробнее здесь: https://stackoverflow.com/questions/794 ... -at-a-time

Вернуться в «JAVA»