Zawsze byłam osobą, która po prostu używa: List<String> names = new ArrayList<>(); Używam interfejsu jako nazwy typu dla przenośności , więc kiedy zadaję takie pytania, mogę przerobić mój kod. Kiedy należy LinkedListstosować na
Lista połączona to struktura danych, w której elementy listy niekoniecznie są przechowywane sekwencyjnie, ale raczej każdy element zawiera odniesienie do następnego (i opcjonalnie poprzedniego) elementu na liście. Ten znacznik powinien być używany z dodatkowymi znacznikami wskazującymi używany język programowania ([c], [c ++], [java] itp.) Oraz wszelkie używane biblioteki lub wtyczki, takie jak [c ++ - biblioteka standardowa]. Sam post powinien zawierać kod źródłowy wydania.
Zawsze byłam osobą, która po prostu używa: List<String> names = new ArrayList<>(); Używam interfejsu jako nazwy typu dla przenośności , więc kiedy zadaję takie pytania, mogę przerobić mój kod. Kiedy należy LinkedListstosować na
Załóżmy, że masz połączoną strukturę listy w Javie. Składa się z węzłów: class Node { Node next; // some user data } i każdy Węzeł wskazuje na następny węzeł, z wyjątkiem ostatniego Węzła, który ma wartość null dla następnego. Powiedzmy, że istnieje możliwość, że lista może zawierać pętlę -...
Kiedy lepiej jest użyć Lista vs w LinkedList
Dlaczego ktoś miałby chcieć używać listy połączonej nad tablicą? Kodowanie listy połączonych jest bez wątpienia nieco większym wysiłkiem niż użycie tablicy i można się zastanawiać, co uzasadniałoby dodatkowy wysiłek. Wydaje mi się, że wstawianie nowych elementów jest trywialne na liście...
Dlaczego funkcja odwrotna dla std::listklasy w standardowej bibliotece C ++ ma liniowe środowisko wykonawcze? Sądzę, że dla podwójnie powiązanych list funkcją odwrotną powinna być O (1). Odwrócenie podwójnie połączonej listy powinno po prostu obejmować zmianę wskaźników głowy i...
Czy to jest połączona lista, tablica? Rozejrzałem się i znalazłem tylko zgadujących ludzi. Moja znajomość języka C nie jest wystarczająco dobra, aby spojrzeć na kod
Jaki jest najłatwiejszy sposób użycia połączonej listy w Pythonie? W schemacie połączoną listę definiuje się po prostu przez '(1 2 3 4 5). Listy Pythona [1, 2, 3, 4, 5]i krotki (1, 2, 3, 4, 5)nie są w rzeczywistości listami połączonymi, a listy połączone mają kilka miłych właściwości, takich jak...
Używam wielu list i tablic, ale nie spotkałem jeszcze scenariusza, w którym lista tablic nie mogłaby być używana tak łatwo, jeśli nie łatwiej niż z listy połączonej. Miałem nadzieję, że ktoś poda mi kilka przykładów, kiedy lista z linkami jest znacznie
Rozumiem, że spotkanie Żółwia i Zająca kończy istnienie pętli, ale w jaki sposób przeniesienie żółwia na początek połączonej listy przy jednoczesnym utrzymaniu zająca w miejscu spotkania, a następnie przesuwanie obu krok po kroku sprawia, że spotykają się w punkcie początkowym...
Próbuję zrozumieć, dlaczego ArrayDeque w Javie jest lepszy niż LinkedList w Javie, ponieważ oba implementują interfejs Deque. Prawie nie widzę kogoś używającego ArrayDeque w swoim kodzie. Gdyby ktoś rzucił więcej światła na sposób implementacji ArrayDeque, byłoby to pomocne. Jeśli to rozumiem,...
W obecnym stanie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi będą poparte faktami, referencjami lub ekspertyzą, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to...
Wcześniej intensywnie pracowałem z listami połączonymi w Javie, ale jestem bardzo nowy w C ++. Używałem tej klasy węzła, która została mi przekazana w projekcie class Node { public: Node(int data); int m_data; Node *m_next; }; ale miałem jedno pytanie, na które nie udzielono zbyt dobrej...
W większości przypadków ludzie próbują korzystać z list połączonych, wydaje mi się to kiepskim (lub bardzo złym) wyborem. Być może warto byłoby zbadać okoliczności, w których połączona lista jest dobrym wyborem struktury danych lub nie. Idealnie byłoby, gdyby odpowiedzi wyjaśniały kryteria, które...
Zastanawiam się, czy istnieje jakaś logika odwracania pojedynczo połączonej listy przy użyciu tylko dwóch wskaźników. Dodaje stosuje się odwrócić jedną listę łączy się stosując trzy wskaźniki mianowicie p, q, r: struct node { int data; struct node *link; }; void reverse() { struct node *p =...
Zgodnie z artykułem Wikipedii dotyczącym list połączonych , wstawianie w środku listy , do której prowadzą linki, jest uważane za O (1). Myślę, że to będzie O (n). Czy nie musiałbyś zlokalizować węzła, który mógłby znajdować się blisko końca listy? Czy ta analiza nie uwzględnia znalezienia...
To pytanie może być stare, ale nie mogłem wymyślić odpowiedzi. Powiedzmy, że istnieją dwie listy o różnych długościach, łączące się w punkcie ; skąd wiemy, gdzie jest punkt łączenia? Warunki: Nie znamy długości Każdą listę powinniśmy analizować tylko
Od jakiegoś czasu pracuję nad projektem Java dla klasy. Jest to implementacja połączonej listy (nazywanej tutaj AddressList, zawierającej zwane proste węzły ListNode). Haczyk polega na tym, że wszystko musiałoby być zrobione za pomocą algorytmów rekurencyjnych. Udało mi się zrobić wszystko...
Ciekaw jestem, czy O (n log n) jest najlepsze, co może zrobić lista połączona.
To jest pytanie programistyczne zadawane podczas testu pisemnego na rozmowę kwalifikacyjną. „Masz dwie pojedynczo połączone listy, które są już posortowane, musisz je scalić i zwrócić nagłówek nowej listy bez tworzenia żadnych nowych dodatkowych węzłów. Zwrócona lista również powinna zostać...
Z jakiego powodu nie zawsze możemy używać HashMap, mimo że jest on znacznie wydajniejszy niż ArrayList czy LinkedList w operacjach dodawania, usuwania, również niezależnie od liczby elementów. Przeszukałem go w Google i znalazłem kilka powodów, ale zawsze istniało obejście dla korzystania z...