Я прочитал файл с городами и его населением, и я стараюсь сортировать города по алфавиту с помощью сортировки. Проблема в том, что по какой-то причине она сортирует ее по-разному. Порядок «отсортированного» списка «ABDCEFHG ...» Я пробовал следовать за ним, но я не могу понять, где это происходит. Это код:Выбор Сортировка строк
//Selection
for (int i = 0; i < cities.size() - 1; i++)
{
int minPos = i;
for (int j = i + 1; j < cities.size(); j++)
{
if (cities.get(j).compareToIgnoreCase(cities.get(minPos)) < -1)
minPos = j;
}
swap(cities, minPos, i);
}
System.out.print("\nSelection: ");
for(int i = 0; i < cities.size(); i++)
System.out.print(cities.get(i) +"|");
private static void swap(ArrayList <String> a, int i, int j)
{
String temp = a.get(i);
a.set(i, a.get(j));
a.set(j, temp);
}
Любая идея, что не так?
Благодаря
Вы пытались использовать '... <0' вместо' ... <-1'? – August
Почему вы используете <-1? вы должны использовать <0 – thermite
Да, это была проблема. Это был первый случай, когда я использовал сравнение строк, поэтому я с ним немного новый. Спасибо! – Nik