Опровергаем комментарий. Бенчмарчим и сравниваем linkedlist vs arraylist

Поделиться
HTML-код
  • Опубликовано: 26 ноя 2024

Комментарии • 19

  • @sergiytychkin
    @sergiytychkin 6 дней назад +1

    "Бегчмарк нас всех рассудит." Надо запомнить. Хорошее выражение.

  • @dr.pepper8399
    @dr.pepper8399 6 дней назад +2

    Спасибо за разбор, очень хорошо получилось, все по фактам. Моя ошибка, я не уточнил, что именно в конец добавление.

    • @kotojava
      @kotojava  6 дней назад +1

      Без претензий это скорее хорошая идея для видоса

  • @Дмитрий-г7г7ь
    @Дмитрий-г7г7ь 6 дней назад

    Вы прям кайфово все обьясняете, хотелось бы что-нибудь услышать насчет кафки интересное)

  • @dudeduder884
    @dudeduder884 6 дней назад +1

    Автор сделайте пожалуйста видео про возможный сценарий замены программистов AI'ем и как это в целом повлияет на поиск работы (особенно для джунов)

  • @xRaYm8nDx
    @xRaYm8nDx 6 дней назад

    предлагаю написать свою реализацию аррэй листа с вызовом нативной функции, которую так же самому написать и чтобы она выгирывала у линкед листа

  • @jolymourner4014
    @jolymourner4014 6 дней назад +1

    Получается linkedlist все же используется иногда? Из слов Джоша Блоха "Does anyone actually use LinkedList? I wrote it, and I never use it." думал что нет

    • @sergiytychkin
      @sergiytychkin 6 дней назад

      Прикольно.

    • @TheExcentro
      @TheExcentro 6 дней назад +1

      Используется конечно. Но редко. Да и в начало и в середину ArrayList никто данные не вставляет обычно. Кстати, зря вставку в середину не протестили - LinkedList на больших размерах вполне может и проигрывать, из-за необходимости перебирать половину списка по очереди, что бы добраться до середины.

    • @TheExcentro
      @TheExcentro 6 дней назад +1

      @@jolymourner4014 Еще один момент упустили - память , занимаемая ArrayList и LinkedList. Последний, насколько я помню, может занимать до нескольких раз больше.

    • @kotojava
      @kotojava  6 дней назад

      все верно, но обычно память уходящая на дополнительные ссылки не является критической. если говорить про память то речь скорее всего будет про какие нибудь строки.

    • @TheExcentro
      @TheExcentro 5 дней назад

      @kotojava если у на LinkedList, то на каждый Integer, мы храним ещё от 4 до 8 байт на каждую ссылку на соседние элементы. То есть мы дополнительно храним в два-четвре раза больше, чем занимают сами данные :)

  • @Slava-Osipov
    @Slava-Osipov 6 дней назад

    Да, если использовать линкедлист в качестве очереди это лучше, но опять же это очередь, а не лист.
    А если провести бенчмарк вставки элемента в случайное место, допустим 100000 элементов в лист с 1млн элементов?
    Далее как насчет случайного доступа к данным, тут очевидно аррайлист быстрее можно не чекать, хотя интересно во сколько раз. И что касается динамичного расширения массива, этим можно пренебречь, поскольку порядок емкости листа скорее всего нам известен, можем проинициализировать нужную емкость заранее.

  • @bbrother92
    @bbrother92 6 дней назад

    Кто-то вообще использует что-то кроме hashmap и ArrayList? ПС можно еще бенч сделать с ArrayDeque

    • @kotojava
      @kotojava  6 дней назад

      А как ты ищешь данные по условию? Итерируешься по всем данным?

    • @bbrother92
      @bbrother92 6 дней назад

      @@kotojava ты про что? Я только к тому, что ни разу не видел в коде что-то кроме hm, ar

    • @kotojava
      @kotojava  6 дней назад

      ну ты спрашиваешь кто использует что то кроме аррэйлиста или хэшмапы. вот я тебя и спрашиваю как ты будешь данные искать по условиям? тоже этими структурами?

    • @bbrother92
      @bbrother92 6 дней назад

      @@kotojava Что ты понимаешь под Искать по условиям? искать по условиям, что за кейс