Размер видео: 1280 X 720853 X 480640 X 360
Показать панель управления
Автовоспроизведение
Автоповтор
На мой взгляд он ни разу не упомянул принцип мерджа списков, что самое важное в данном случае.
Поддерживаю. Ждал когда он объяснит про само слияние, вместо этого он раз по сто повторил левая часть, правая часть и ещё сто раз тронул себя за лоб.. >:/
+
ruclips.net/video/6woBwlm1tRM/видео.html
он начал объяснять мерж на 9:50
Для простоты понимания - сплит с мерджем:class MyClass { public static void main(String[] args) { System.out.println(Arrays.toString(split(new int[] {5,4,3,2,1}))); } public static int[] split(int[] array) { if (array.length == 1) return array; if (array.length == 2) return mergeArrays(new int[] {array[0]}, new int[] {array[1]}); int[] left = new int[array.length / 2]; int[] right = new int[array.length - array.length / 2]; System.arraycopy(array, 0, left, 0, left.length); System.arraycopy(array, left.length, right, 0, right.length); return mergeArrays(split(left), split(right)); } public static int[] mergeArrays(int[] a1, int[] a2) { int[] a = new int[a1.length + a2.length]; int i = 0, i1 = 0, i2 = 0; while (i1 < a1.length && i2 < a2.length) a[i++] = a1[i1] < a2[i2] ? a1[i1++] : a2[i2++]; while (i1 < a1.length) a[i++] = a1[i1++]; while (i2 < a2.length) a[i++] = a2[i2++]; return a; }}
Бесполезное обьяснение, никак не обьясняется само слияние, как там реализована вставка в правильном порядке
God bless you!! This explanation saved my brain!!!
Спасибо за перевод!!! Очень полезная инфа
Что за недовольство в комментариях? Это лучшее объяснение в мире!!!
далеко не лучшее...
Как в жизни, человек приходит из несортированого списка на землю, сортируется и уходит в целое
Алгоритмы от молодого Брюса Уиллиса
в самом конце он и рассматривает как происходит слияние на самых длинных кусках массива
что делать если исходный список не кратен двум?
Сергей Белов добавить нулевой элемент )
по коду не важно кратно оно двум или нет. ты же итератор перемещаешь пока он < .length()
ничего не делать. разбивка идёт до каждого элемента и потом также сливается
Много лишних слов, можно объяснить проще
Нафига вообще крошить видео годичной давности?
flat323 потому что ты не центр вселенной
@@forsic1 правильно. потому что центр вселенной Я
На мой взгляд он ни разу не упомянул принцип мерджа списков, что самое важное в данном случае.
Поддерживаю. Ждал когда он объяснит про само слияние, вместо этого он раз по сто повторил левая часть, правая часть и ещё сто раз тронул себя за лоб.. >:/
+
ruclips.net/video/6woBwlm1tRM/видео.html
он начал объяснять мерж на 9:50
Для простоты понимания - сплит с мерджем:
class MyClass {
public static void main(String[] args) {
System.out.println(Arrays.toString(split(new int[] {5,4,3,2,1})));
}
public static int[] split(int[] array) {
if (array.length == 1) return array;
if (array.length == 2) return mergeArrays(new int[] {array[0]}, new int[] {array[1]});
int[] left = new int[array.length / 2];
int[] right = new int[array.length - array.length / 2];
System.arraycopy(array, 0, left, 0, left.length);
System.arraycopy(array, left.length, right, 0, right.length);
return mergeArrays(split(left), split(right));
}
public static int[] mergeArrays(int[] a1, int[] a2) {
int[] a = new int[a1.length + a2.length];
int i = 0, i1 = 0, i2 = 0;
while (i1 < a1.length && i2 < a2.length) a[i++] = a1[i1] < a2[i2] ? a1[i1++] : a2[i2++];
while (i1 < a1.length) a[i++] = a1[i1++];
while (i2 < a2.length) a[i++] = a2[i2++];
return a;
}
}
Бесполезное обьяснение, никак не обьясняется само слияние, как там реализована вставка в правильном порядке
God bless you!! This explanation saved my brain!!!
Спасибо за перевод!!! Очень полезная инфа
Что за недовольство в комментариях? Это лучшее объяснение в мире!!!
далеко не лучшее...
Как в жизни, человек приходит из несортированого списка на землю, сортируется и уходит в целое
Алгоритмы от молодого Брюса Уиллиса
в самом конце он и рассматривает как происходит слияние на самых длинных кусках массива
что делать если исходный список не кратен двум?
Сергей Белов добавить нулевой элемент )
по коду не важно кратно оно двум или нет. ты же итератор перемещаешь пока он < .length()
ничего не делать. разбивка идёт до каждого элемента и потом также сливается
Много лишних слов, можно объяснить проще
Нафига вообще крошить видео годичной давности?
flat323 потому что ты не центр вселенной
@@forsic1 правильно. потому что центр вселенной Я