170 похожих чатов

Вопрос, вы связные списки создаете в своих проектах?) или это

уже атавизм и можно выкинуть из головы

37 ответов

51 просмотр

Если задаешься такими вопросами, значит оно тебе не нужно

Nik-M Автор вопроса
Phantom
Если задаешься такими вопросами, значит оно тебе н...

просто перелистываю старые тетрадки, а там какие то списки) вообще про них забыл уже

Любая структура данных нужна под конкретные задачи, это все равно, что спросить "а деревья вы используете?". Если задач нет подходящих - это не значит, что структура данных мертва

Ну знать, что это такое и как делается, просто для общего уровня не лишнее, но по факту это сейчас, по крайней мере, в дотнете всё делается библиотеками.

Если проекты тривиальные и обычные, то там можно и за годы не встретить деревья или какие-то там иные особые структуры, а если что-нибудь алгоритмическое типа оптимизации склада (WMS-системы) или логистика или ещё что-то, то можно встречать чуть ли не неделю через неделю. Тут как повезёт (ну или не повезёт).

Nik-M Автор вопроса

ну в индексаторе хотя бы по индексу можно обратиться к элементу, а в списке нифига

Ap6ye Ap6ye
Если проекты тривиальные и обычные, то там можно и...

ну технически мы с деревьями вообще постоянно работаем, просто это скрыто от нас обычно, и даже в простых проектах но в целом да - в большинстве случаев даже заморачиваться нет смысла

Evgeniy
Любая структура данных нужна под конкретные задачи...

А есть пример, где линкедлист будет лучше массива?

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

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

Phantom
А есть пример, где линкедлист будет лучше массива?

бесконечно большие чанки данных под которые блоб не выделить полноценно

Phantom
А есть пример, где линкедлист будет лучше массива?

По каким критериям лучше? Вопрос будто на тостере в 2011 заданный

Phantom
А есть пример, где линкедлист будет лучше массива?

Описание конвейера, где каждый следующий шаг зависит от предыдущего и делается только в случае успеха предыдущего. Конкретно практический пример — пошаговый лексический разбор сообщения с разбиением на подобъекты. К следующему шагу анализа нет смысла идти и сохранять его, если на предыдущем что-то пошло не так.

ни разу им не пользовался. но в дотнете из коробки есть его реализация

Phantom
И почему здесь не применим массив?

Потому что важно сохранять последовательность и состояние?

Phantom
В производительности конечно же

Думаю и сами знаете, что добавление/удаление из конца/начала и без частой необходимости доставать элементы

Phantom
И почему здесь не применим массив?

И да, задачка очень специфическая, была на очень нишевом проекте по разбору особых кодированных сообщений для авиации. В обычных реалиях такое и правда нечасто бывает.

каждый раз когда юзаю стрингбилдер?

floitet malenavaka
каждый раз когда юзаю стрингбилдер?

Стрингбилдер не построен на связанном списке

Phantom
А ты уверен?

мне за тебя в репу дотнета сходить?

floitet malenavaka
мне за тебя в репу дотнета сходить?

Первоначальная длина составляет 16 символов, а при нехватке места для добавления новых символов StringBuilder заменяет внутреннюю строку на строку длиною в два раза больше и копирует во вновь созданную все символы из предыдущей + новые. Удвоение длины строки приводит к линейной сложности (O(n)) по памяти, в отличие от квадратичной, которая присуща обычным строкам.

Nik-M Автор вопроса
moiseenko
Первоначальная длина составляет 16 символов, а при...

это List<T> так делает, ток там увеличение на 4 элемета

moiseenko
Первоначальная длина составляет 16 символов, а при...

я думал там лист строк, а там просто строка

Nik M
это List<T> так делает, ток там увеличение на 4 эл...

Читайте доки. Стрингбилдер построен на динамическом массиве, в .net это Лист

moiseenko
Читайте доки. Стрингбилдер построен на динамическо...

дак на листе или на строке?)) в том, что ты скинул, 0 слов о листе

Nik-M Автор вопроса

тащусь от ILSpy, все верно увеличивает на 16 элементов

Nik M
тащусь от ILSpy, все верно увеличивает на 16 элеме...

выше кинул ссылку, прошу к ознакомлению с докой вашего языка

Похожие вопросы

Обсуждают сегодня

Ребят в СИ можно реализовать ООП?
Николай
33
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем доброго вечера. Разрабатываю 32 раз. приложение в Delphi. Столкнулся с тем, что стандартный  TFilestream  не работает с большим файлом > 2 ГБайт (после вызова функции see...
Vadim Gl
16
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
добрый день. Подскажите, есть сайт на 1.4.7 и я хочу обновиться, особо ничего не меняя. мне выбирать версию 1.4.35 или третью ветку? и можно ли обновлять "как есть", или нужно...
Digital Cat
12
Кто кодит под Лазарем на винде, у вас аналогично VCL переопределяются CreateWnd и CreateParams для конкретных классов контролов и все заданные флаги влияют?
А Андрей
11
У меня задача: написать брокер сообщений. Очереди и потребители. Очереди поддерживают приоритеты. Очередь отдает сообщения, только обработчикам с соответствующими характеристи...
Aleksandr Filippov
2
народ, плиз хелп, всю голову сломал себе уже... разве может быть так, что GetProcAddress( GetModuleHandle( "kernel32.dll" ), "SetThreadDescription" ) вернёт ненулевое значение...
Iluha Companets
12
А, ты про текущую реализацию? Нет конечно, я бы сделал правильно - сейчас там гавнокод
Александр (Rouse_) Багель
6
Карта сайта