NOVINKA: Staň se datovým analytikem od 0 Kč a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Diskuze – Lekce 3 - Spojový seznam v C#

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
stacox
Člen
Avatar
stacox:18.2.2013 16:32

Sice se jedná o triviálnost, ale mám za to, že máš popisky metod LinkedList prohozený :)
-
AddAfter - Přidá prvek před daný prvek.
AddBefore - Přidá prvek za daný prvek.

 
Odpovědět
18.2.2013 16:32
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na stacox
David Hartinger:18.2.2013 17:27

Díky, opraveno :)

Odpovědět
18.2.2013 17:27
New kid back on the block with a R.I.P
Avatar
pracansky
Člen
Avatar
pracansky:11.4.2015 23:00

Z popisu toho listu jsem pochopil že při každém překročení hranice 12 prvků se všechna data kopírují. A při mazání dokonce pokaždé. To je asi při větších velikostech problém.

Naproti tomu vázaný seznam je sice možné snadno rozšiřovat i zkracovat, ale není možné jej rychle indexovat.

Existuje nějaké alternativa která která má výhody obou (rychlé změny i indexový přístup) i za cenu většího plýtvání pamětí?

 
Odpovědět
11.4.2015 23:00
Avatar
Patrik Bak
Člen
Avatar
Patrik Bak:7.10.2015 0:27

Kde v praxi má toto význam použiť ?

 
Odpovědět
7.10.2015 0:27
Avatar
Ondra Toman
Člen
Avatar
Ondra Toman:6.1.2020 0:09

Chápu teda správně, že LinkedListNode je jakýsi přístupový bod do určitého místa v seznamu?
pokud budu mít takovýto seznam:

2 - první
7
5 - node
3 - posledí

můžu k 7 přistoupit jako "prvek před node"?

 
Odpovědět
6.1.2020 0:09
Avatar
Nositelka Změny:27.1.2020 13:24

Chápu správně, že List<> (popř. ArrayList) ve skutečnosti není žádný seznam, ale úplně obyčejné dynamické pole (něco jako vector v C++)?

Odpovědět
27.1.2020 13:24
j.k.j
Avatar
Odpovídá na Nositelka Změny
Petr Štechmüller:27.1.2020 14:08

Ahoj, ano, reálná implementace List, nebo ArrayList je ve skutečnosti dynamické pole.
Doporučuji se podívat přímo na zdrojáky jak Listu, tak ArrayListu ;-)

Z nich poznáš, co se tam přesně děje :)

Odpovědět
27.1.2020 14:08
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
David
Člen
Avatar
David:10.5.2020 21:30

Díky za článek. ;-)

 
Odpovědět
10.5.2020 21:30
Avatar
Vaclav Pieter:4.7.2022 12:37

Tento článek nic neobjasnil jen přinesl spoustu otázek. Například jak se pracuje s uzly "node". Musím je uchovávat v paměti? Co když vytvořím spojový seznam bez node a následně budu chtít přidat další záznam někam doprostřed kde node nemám?

 
Odpovědět
4.7.2022 12:37
Avatar
Odpovídá na Vaclav Pieter
Luděk Bartyzal:12.9.2022 13:06

Ahoj, pracuješ s tím jako s normálním Listem. Uzly si pamatovat nemusíš (pokud teda nemáš nějaký uzel, který se vyplatí si pamatovat). Když budeš chtít přidat další záznam do již vytvořeného spojového seznamu na určité místo, tak si nejdříve vyhledáš to místo, kam dotyčný záznam chceš vložit a pak ho přidáš pomocí AddAfter() (případně AddBefore()) ;-)

 
Odpovědět
12.9.2022 13:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 12.