[ bciric @ 12.11.2007. 13:16 ] @
kako se u C# prave dvostruko ulancane liste?
Da li ima neko iskustav sa tim listama?

hvala unapred
[ negyxo @ 12.11.2007. 13:37 ] @
Pa imas LinkedList u .NET. Pogledaj ovaj link imas interesantne klase. Inace, mozes i sam da namestis dvostruko uvezane liste, to nije nista specificno za .NET.
[ jablan @ 12.11.2007. 14:44 ] @
Code:

class A {
A prev, next;
}
[ bciric @ 12.11.2007. 17:54 ] @
Code:

   class StateNode
    {
        public int info;
        public StateNode next;
        public StateNode()
        {
            info = 0;
            next = null;
        }
        public StateNode(int x)
        {
            info = x;
            next = null;
        }
    }


Da li ovo moze da funkcionise?

[ negyxo @ 12.11.2007. 18:40 ] @
Pa moze ali to nije bidirectional node, posto imas samo jednu referencu na next. Ne bi da pametujem ali vec imas gotovu klasu u framework-u, ovako svaku klasu da bi 'strpao' u linked listu moras da prosirujes sa interfejsima ako hoces neko genericko resenje ili samo da dodas polja a i nemas iteratore. Mislim da ti je bolje da se zadrzis na LinkedList<T> jer tamo vec imas resenje koje wrapuje tvoje objekte a ne ti rucno da pises. Mada, ne znam sta hoces...

Da zaboravih... jablan ti je napisao primer. Krace ne moze ;)
[ bciric @ 13.11.2007. 09:55 ] @
Ma da to je samo cvor liste, imam i listu StateList nego me je brinulo dal se tako radi sa listama.

hvala puno

Citat:
negyxo: ...ali vec imas gotovu klasu u framework-u, ovako svaku klasu da bi 'strpao' u linked listu moras da prosirujes sa interfejsima ako hoces neko genericko resenje ili samo da dodas polja a i nemas iteratore. Mislim da ti je bolje da se zadrzis na LinkedList<T> jer tamo vec imas resenje koje wrapuje tvoje objekte a ne ti rucno da pises. Mada, ne znam sta hoces...


Jer mozes malo da mi pojasnis? ili jos bolje neki primer ako imas

hvala
[ negyxo @ 13.11.2007. 19:24 ] @
Evo ovde imas objasnjenje za duplu listu http://www.codeproject.com/csharp/doubly-linkedlist.asp.

Mislio sam da zelis svaku klasu da prosirujes sa prev i next poljima. Zato sam ti napisao ako hoces neko genericko resenje da bi morao da prosirujes sa interfejsima. Drugo genericko resenje je da pravis wraper oko objekta pa onda lepo barats samo sa listom ali ovu implementaciju vec imas u frameworku, tako da ti je bolje da se vec oslonis na postojecu. Onda, sledeca stvar je iterator, koji isto moras da implementiras, mada to je u C# 2.0 lako sa yield naredbom.
Sad kontam da ti zelis izgleda da napises svoju implementaciju u edukativne svrhe. Pa sa srecom.