Найти - Пользователи
Полная версия: генерация единичной матрицы
Начало » Python для новичков » генерация единичной матрицы
1 2 3 4
py.user.next
FishHook
как реализацию deque через doubly-linked list
Вот знаешь такую динамическую струтуру данных “стек”? Вот мы берём два стека и ставим их днами друг к другу - это и есть дек. А если же мы берём эти два стека и ставим вершинами друг к другу - это Л2-список.

При этом стек можно реализовать через Л1-список. А Л1-список можно реализовать через стек. Но становится ли одно другим? В стеке нет понятия указателя стека, а в Л1-списке - есть. Это просто разные структуры, с разными операциями над ними.

Это как стек можно реализовать на массиве и индексной переменной, но при этом операции с этим стеком вооще не будут иметь никакого индекса. Есть только вершина, на которую можно что-то положить и с которой можно что-то снять. Можно проверить, пуст стек или не пуст. А можно ещё удалить элемент вершины, можно прочитать элемент вершины, а можно перезаписать элемент вершины. Всё это делается без затрагивания индексной переменной, которая там внутрях. То есть для стека нет понятия индексной переменной, она только внутри существует, пока он на массиве основан.
FishHook
py.user.next
То есть ты меня хочешь убедить в том, что doubly-linked list - это не linked list?
Я понял, спасибо.
py.user.next
FishHook
То есть ты меня хочешь убедить в том, что doubly-linked list - это не linked list?
То, что дек реализован через двусвязный список, не делает дек двусвязным списком. Так же как стек, реализованный через массив с индексом, не становится массивом с индексом от этого.
FishHook
py.user.next
То, что дек реализован через двусвязный список, не делает дек двусвязным списком

А я и не настаиваю. Я говорил, что связные списки - это не джава-специфичная структура и привел пример, где они используются в питоне. Дек - это первое что пришло в голову. Если поковырять, то наверняка можно еще найти примеров. Если у тебя есть пример лучше, пожалуйста, покажи.
AD0DE412
удваиваю
зы пока (ну это оптимистично) не чего не понимаю, но интересно
ззы в джаве я так понимаю - это в батарейках, а в питоне если строго - нет
#ноестькоечтоподобное
FishHook
AD0DE412
ззы в джаве я так понимаю - это в батарейках,
А дайте практический пример, где по-вашему было бы уместно использовать связный список вместо обычного списка.
Вот здесь на сорока страницах обсуждения так и не пришли к консенсусу о полезности LinkedList в джаве.
py.user.next
FishHook
Я говорил, что связные списки - это не джава-специфичная структура и привел пример, где они используются в питоне.
В питоне нет связных списков, поэтому мы их и реализуем каждый раз или реализуем один раз, а потом используем эту реализацию. Этот новичок имел в виду реализацию, которую можно взять и использовать, уже готовую.

Где используются связные списки (почему они включены в библиотеки многих языков, не только Java)? Да много где: файловые системы, сетевые дела, какие-то сложные структуры данных, хеш-таблицы. Пользовался хеш-таблицей когда-нибудь? Суслику видишь? А она есть.
FishHook
py.user.next
То, что дек реализован через двусвязный список, не делает дек двусвязным списком.
py.user.next
В питоне нет связных списков,
py.user.next
Пользовался хеш-таблицей когда-нибудь? Суслику видишь? А она есть.


сколько раз я уже зарекался отвечать на твои посты!
этот был последним
py.user.next
Связный список хорош тем, что даёт хранить элементы в любом порядке. В памяти они могут лежать так, что последний лежит в самом начале, а первый лежит в самом конце. При этом как бы они ни хранились, операции со списком происходят с одной и той же скоростью. Вот из-за этого в файловых системах они и используются, так как один файл может хранится по кусочкам в разных областях диска. Помнишь суть дефрагментации, что это такое вообще? А касаемо хеш-таблиц, связные списки там используются потому, что связный список - это динамическая структура данных. То есть при разрастании такой таблицы до неопределённого размера (когда мы не можем заранее выделить известное количество памяти под неё), связные списки в её основе всегда дают возможность добавить новый элемент как ни в чём не бывало. И вот поэтому они есть во многих языках - в C++ там, в Java и так далее.
Связный список можно легко хранить на разных компьютерах. А попробуй питоновские структуры похрани хотя бы в разных частях диска.
AD0DE412
FishHook
А дайте практический пример, где по-вашему было бы уместно использовать связный список вместо обычного списка.
топ хит европа плюс. хотя нет нужно что то где … есть очередь, не имеющая понятия о порядновом номере(индексе), но каждый элемент которой имеет понятие (информацию) что было до и что будет после.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB