Запитання з тегом «linked-list»

Зв'язаний список - це структура даних, де елементи списку не обов'язково зберігаються послідовно, а кожен елемент містить посилання на наступний (і необов'язково попередній) елемент у списку. Цей тег слід використовувати з додатковими тегами, що вказують на мову програмування, що використовується ([c], [c ++], [java] тощо), та будь-які бібліотеки або додатки, такі як [c ++ - стандартна бібліотека]. Сама публікація повинна містити вихідний код для випуску.

30
Коли використовувати LinkedList над ArrayList на Java?
Я завжди використовував: List<String> names = new ArrayList<>(); Я використовую інтерфейс як назву типу для портативності , так що коли я задаю такі питання, я можу переробити свій код. Коли слід LinkedListвикористовувати більше ArrayListі навпаки?

25
Як виявити цикл у пов'язаному списку?
Скажімо, у вас на Java пов'язана структура списку. Складається з Вузлів: class Node { Node next; // some user data } і кожен Вузол вказує на наступний вузол, за винятком останнього Вузла, який має нуль для наступного. Скажімо, існує можливість, що список може містити цикл - тобто кінцевий Node замість …


30
Масив проти пов'язаного списку
Чому хтось хоче використовувати зв'язаний список через масив? Кодування зв'язаного списку, без сумніву, трохи більше роботи, ніж використання масиву, і можна задатися питанням, що виправдає додаткові зусилля. Я думаю, що вставлення нових елементів є тривіальним у пов'язаному списку, але це головна справа у масиві. Чи є інші переваги використання зв’язаного …

7
Чому std :: list :: reverse має складність O (n)?
Чому функція звороту для std::listкласу в стандартній бібліотеці C ++ має лінійне виконання? Я думаю, що для подвійно пов'язаних списків зворотна функція повинна була бути O (1). Повернення подвійно пов'язаного списку повинно включати перемикання вказівників голови та хвоста.
192 c++  c++11  stl  linked-list 


28
Список пов'язаних Python
Який найпростіший спосіб використовувати зв'язаний список у python? У схемі зв'язаний список визначається просто '(1 2 3 4 5). Списки Python [1, 2, 3, 4, 5], і кортежі, (1, 2, 3, 4, 5)насправді не є зв'язаними списками, а зв'язані списки мають деякі приємні властивості, такі як конкатенація постійного часу та …

15
Коли використовувати зв'язаний список над списком масиву / масиву?
Я використовую безліч списків і масивів, але мені ще не довелося зіткнутися зі сценарієм, коли список масивів не можна було використовувати так само легко, як, якщо не простіше, ніж пов'язаний список. Я сподівався, що хтось може надати мені кілька прикладів, коли пов'язаний список помітно кращий.

8
Чому ArrayDeque кращий за LinkedList
Я намагаюся зрозуміти, чому Java ArrayDeque кращий, ніж Java LinkedList, оскільки вони реалізують інтерфейс Deque. Я навряд чи бачу когось, хто використовує ArrayDeque у своєму коді. Якщо хтось пролиє більше світла на те, як реалізується ArrayDeque, було б корисно. Якщо я це зрозумію, буду впевнено використовувати його. Я не міг …

21
Поясніть, як знайти вузол запуску циклу в списку, пов'язаному з циклом?
Я розумію, що зустріч Черепахи та Зайця завершує існування петлі, але як переміщення черепахи до початку пов'язаного списку, зберігаючи зайця на місці зустрічі, а потім переміщуючи обидва кроки за часом, змушує їх зустрітися на початковій точці циклу?

6
Як створити структуру даних пов'язаного списку на Java? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

11
Чому пов'язані списки використовують покажчики замість того, щоб зберігати вузли всередині вузлів
Я раніше широко працював із пов'язаними списками на Java, але я дуже новачок у C ++. Я використовував цей клас вузлів, який мені було дано в проекті просто чудово class Node { public: Node(int data); int m_data; Node *m_next; }; але у мене було одне запитання, на яке не дуже …

15
За яких обставин пов'язані списки корисних?
У більшості випадків, коли я бачу, як люди намагаються використовувати пов'язані списки, мені здається, це поганий (або дуже поганий) вибір. Можливо, було б корисно вивчити обставини, за яких пов'язаний список є чи не є вдалим вибором структури даних. В ідеалі відповіді пояснюватимуть критерії, які слід використовувати для вибору структури даних, …

30
Як змінити список, пов'язаний окремо, використовуючи лише два покажчики?
Мені цікаво, чи існує якась логіка, щоб перетворити окремо пов'язаний список, використовуючи лише два покажчики. Нижче використовується для зміни одного пов'язаного списку з використанням трьох покажчиків , а саме p, q, r: struct node { int data; struct node *link; }; void reverse() { struct node *p = first, *q …

14
Чому вставляється посередині пов'язаного списку O (1)?
Згідно зі статтею Вікіпедії у зв’язаних списках , вставлення в середині зв'язаного списку вважається O (1). Я б подумав, що це буде O (n). Чи не потрібно вам знаходити вузол, який може бути в кінці списку? Чи не враховує цей аналіз знаходження операції з вузлом (хоча це потрібно), а лише …
105 linked-list  big-o 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.