У меня есть arraylist, заполненный случайными целыми числами. Я пытаюсь использовать сортировку вставки для сортировки, а затем распечатывать их на экране. Все работает, но сортировка вставки ... Не уверен, что не так, может кто-то взглянуть на нее и найти, что пошло не так ... Спасибо.Вставка Сортировка Неверный
public static ArrayList<Integer> oh = new ArrayList<Integer>();
public static ArrayList<Integer> gen2()
{
ArrayList<Integer> oh = new ArrayList<Integer>();
Random random = new Random();
for (int i = 0; i < 100; i++)
{
oh.add(random.nextInt());
}
return oh;
}
public static ArrayList<Integer> insertionSort(ArrayList<Integer>oh) {
int i, j;
for (i = 1; i < oh.size(); i++) {
Integer tmp = oh.get(i);
j = i;
while ((j > 0) && (oh.get(j - 1).intValue() > tmp.intValue())) {
oh.set(j, oh.get(j - 1));
j--;
}
oh.set(j, tmp);
}
return oh;
}
public static void main(String[] args)
{
System.out.println("Original List:");
System.out.println(gen2());
System.out.println("Sorted Arraylist:");
System.out.print(insertionSort(oh));
}
Большое вам спасибо! – user5344755
@ user5344755: В Eclipse (и, возможно, в других IDE: s также) есть настройки, которые позволяют предупреждать об этом случае, когда вы затеняете поле локальной переменной. Это действительно помогает много раз! Параметр, расположенный в настройках -> Java -> Компилятор -> Ошибка/Предупреждения -> Затенение и конфликты имен. – Lii
@lii Спасибо, я этого не знал! – user5344755