|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Всем добрый день! Часто читаю в форумах что на собеседованиях задают вопросы из области : "Расскажите про ArrayList vs LinkedList " И если с теорией http://habrahabr.ru/post/162017/ у всех более менее все гладко , то вот с практикой возникают вопросы : Предлагаю такую задачку для решения и обсуждения : Есть список, (очередь элементов) нужно из него получить другой список (отсортировать элементы в другом порядке) : Пример простой : x(1),x(2),...,x(n) => x(1), x(n-1), x(2), x(n-2)... 1) Нужно написать код для Queue , LinkedList , ArrayList . 2) Без использования дополнительного списка (массива) - делать перестановки в этом же списке, массиве. 3) Оценить время, производительность , эффективность. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 11:34 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1то вот с практикой возникают вопросы : С практикой тоже все просто. ArrayList в 99% случаев быстрее. То есть, чтобы LinkedList работал быстрее, нужно подогнать условия задачи под реализацию каждой из коллекций. В практике такого не встречается. Atum11) Нужно написать код для Queue , LinkedList , ArrayList . Queue это интерфейс а не реализация. Что мерять собрались? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 11:38 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
BlazkowiczС практикой тоже все просто Нужен код для каждой реализации , вопрос на знание методов коллекций ! Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 11:52 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1Нужен код для каждой реализации Queue это реализация? Atum1 , вопрос на знание методов коллекций ! А документация на что? Atum1 Код: java 1. 2.
Ожидается что эти двое как-то отличаются по производительности? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 11:55 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
BlazkowiczQueue это реализация? Ожидается что эти двое как-то отличаются по производительности? Интерфейс. Будем точными. Вопрос и заключается в том чтобы испытуемый написал простой алгоритм , а уже потом объяснил на его примере что да как работает. Queue и LinkedList имеют разные методы, требуется решить задачу - используя методы Queue , потом используя методы LinkedList , которых нет в интерфейсе Queue. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 12:00 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Blazkowicz Blazkowicz , Сколько Вам нужно времени чтобы написать такой алгоритм ? Для проверки : Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 12:07 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1 Есть список, (очередь элементов) нужно из него получить другой список (отсортировать элементы в другом порядке) : Пример простой : x(1),x(2),...,x(n) => x(1), x(n-1), x(2), x(n-2)... А x(n) куда делся? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 12:20 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
mesierAtum1 Есть список, (очередь элементов) нужно из него получить другой список (отсортировать элементы в другом порядке) : Пример простой : x(1),x(2),...,x(n) => x(1), x(n-1), x(2), x(n-2)... А x(n) куда делся? подумайте :) такой ряд был бы слишком простой : x(1),x(2),...,x(n) => x(1), x(n), x(2), x(n-1)... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 12:24 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Звучит как " до думайте". )) Последний член больше не нужен (как скрипач)? Или что? У меня преподаватель был в институте, он категорически отказывался на консультациях решать задачи, написанные на листочке. Говорит, вдруг ты в одном символе ошибся, а я мучайся потом.. Так вот, мне кажется это как раз тот случай! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 12:46 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
mesierУ меня преподаватель был в институте, он категорически отказывался на консультациях решать задачи, написанные на листочке. Говорит, вдруг ты в одном символе ошибся, а я мучайся потом.. Зачем листочек? Перед Вами компьютер с Вашей любимой IDE :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 13:03 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
А зачем решать такие задачи? Что бы показать, что выбранная коллекция для этой задачи неоптимальна? В .Net подфоруме, пару месяцев назад один тип носился, в каждой теме твердил что связанный список быстрее всех остальных коллекций (бедняга, наверно тоже увидел лишь одну задачу). Я к чему это все, либо составляейте справочник типового решения разных задач на разных коллекциях - тогда поможете начинающим в выборе коллекции под задачу (а так же дадите "списать" решение под неудобный вариант использования коллекции), либо закопайте тему поглубже . Справочник, оформляйте как FAQ, либо вообще отдельным сайтом, с указанием ссылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 13:58 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
in-place O(n^2) для arraylist O(n^3) для linkedlist не in-place O(n) arraylist. O(n^2) linkedlist. Queue в этой задаче делать нечего. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 14:32 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
schwain-place O(n^2) для arraylist O(n^3) для linkedlist не in-place O(n) arraylist. O(n^2) linkedlist. Queue в этой задаче делать нечего. Отлично! Оценки есть ! Остался код ! Для затравки решение на Хаскель http://ideone.com/JiG0Ut Жду на java :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 15:26 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1 Пример простой : x(1),x(2),...,x(n) => x(1), x(n-1), x(2), x(n-2)... Я правильно понял из 1,2,3,4 получить 1,3,2,2 и это называется сортировка? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:00 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1, я может чего то не понимаю, но это в самом деле сортировка? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:34 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Если это не сортировка, а перестановка элементов, то связанный однозначно быстрее O(n 2 ) arraylist. O(n) linkedlist. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:42 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Сергей Арсеньев, Задача из одной последовательности получить другую по формуле. x(1),x(2),...,x(n) => x(1), x(n-1), x(2), x(n-2),..., x(n) Для 1,2,3,4 => 1,3,2,4 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:43 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
ivanraЕсли это не сортировка, а перестановка элементов, то связанный однозначно быстрее O(n 2 ) arraylist. O(n) linkedlist. Отлично! Нужен код. На любом известном Вам языке программирования . Идеально на java. Еще раз - есть последовательность элементов x(1),x(2),...,x(n) нужно на ее основании получить последовательность с другим порядком - такой же длинны . Но чтобы : 1) первый и последний элементы ее были на своих местах, x(1) ... x(n) 2) Остальные чередовались x(1), x(n-1), x(2), x(n-2) , x(3) , x(n-3) ... x(n) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:48 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
ivanraЕсли это не сортировка, а перестановка элементов, то связанный однозначно быстрее O(n 2 ) arraylist. O(n) linkedlist. В идеальной сферической ЭВМ в вакууме? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 16:51 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1Еще раз - есть последовательность элементов x(1),x(2),...,x(n) нужно на ее основании получить последовательность с другим порядком - такой же длинны . Но чтобы : 1) первый и последний элементы ее были на своих местах, x(1) ... x(n) 2) Остальные чередовались x(1), x(n-1), x(2), x(n-2) , x(3) , x(n-3) ... x(n) Ну наконец-то.. ) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 17:29 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Ну наконец-то.. ) Ура! Появилось первое решение для ArrayList vs LinkedList http://ideone.com/W3oqDP ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 17:50 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
Atum1Отлично! Оценки есть ! Остался код ! Для затравки решение на Хаскель http://ideone.com/JiG0Ut Жду на java :) Решил блеснуть интеллектом? Так слушай. Никто линкед-лист не сортирует. Нет в природе такой постановки. В тех структурах данных где LL действительно существует, он вспомогательный (LRU/MRU) и линкует обычно листовые узлы деревьев. Это его главное применение. Любые попытки сортировать (и поддерживать в ражнированом порядке LL) вызывают опухоль мозга у всего software. Структуры данных нужно использовать в правильных use-cases а не др@чиtь их. Прости модератор. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 18:12 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
maytonТак слушай. Никто линкед-лист не сортирует. Мы не говорим о классической сортировке - где одно больше другого или меньше. Будьте внимательны - мы говорим , если хотите о шафлере, который выстраивает коллекцию в определенном порядке. был порядок x(1),x(2),...,x(n) стал x(1), x(n-1), x(2), x(n-2) ,..., x(n) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 18:20 |
|
Задачка для собеседования : ArrayList vs LinkedList
|
|||
---|---|---|---|
#18+
mayton Так слушай. Никто линкед-лист не сортирует. Нет в природе такой постановки. В тех структурах данных где LL действительно существует, он вспомогательный (LRU/MRU) и линкует обычно листовые узлы деревьев. Это его главное применение. Любые попытки сортировать (и поддерживать в ражнированом порядке LL) вызывают опухоль мозга у всего software. Структуры данных нужно использовать в правильных use-cases . Есть конкретная задача - Вам нужно применив ваши знания коллекций решить ее и дать оценку вашего решения. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2013, 18:22 |
|
|
start [/forum/topic.php?fid=59&msg=38465050&tid=2120893]: |
0ms |
get settings: |
7ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
49ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
431ms |
get tp. blocked users: |
0ms |
others: | 343ms |
total: | 841ms |
0 / 0 |