Кажется, Collections.sort выдает неверные результатыJAVA

Программисты JAVA общаются здесь
Anonymous
Кажется, Collections.sort выдает неверные результаты

Сообщение Anonymous »


Следующий код работает, за исключением определенных входных данных.

Например, следующее входное значение -1795085364 остается последним значением, несмотря на то, что оно является наименьшим. Я использую Java 13.

{306474574, 642543743, -752837577, 1030910205, 353252387, -1028696876, 2145575295, 2142057380, 66066294, -1795085364};
Private static void sortAndFilter(int[] nums) { List numsIndexed = новый ArrayList(nums.length); for( int i = 0 ; i< nums.length; i++){ int[] valAndIndex = {nums,i }; numsIndexed.add( valAndIndex ); } Collections.sort(numsIndexed, (a,b) -> a[0] - b[0]); //остальная часть кода здесь }

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