Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1268 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Liste doublement chainée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Liste doublement chainée

n°192759
El_gringo
Posté le 09-08-2002 à 11:19:24  profilanswer
 

...j'trouve pas dans le JDK, y a une liste doublement chainée ?
Genre, une liste dans laquelle on peut, à partir d'un élément, avoir l'élément précédent ou l'élément suivant.
ça dit qqch à qqn ?

mood
Publicité
Posté le 09-08-2002 à 11:19:24  profilanswer
 

n°192760
--greg--
Posté le 09-08-2002 à 11:22:14  profilanswer
 

je pense pas que ça existe mais ça doit pas etre mortel à implementer.
bete question (sans remettre en doute ton choix): c'est pour faire quoi?

n°192769
benou
Posté le 09-08-2002 à 11:29:42  profilanswer
 

si si ca existe : java.util.LinkedList
 

Citation :

In addition to implementing the List interface, the LinkedList class provides uniformly named methods to get, remove and insert an element at the beginning and end of the list. These operations allow linked lists to be used as a stack, queue, or double-ended queue (deque).

n°192775
--greg--
Posté le 09-08-2002 à 11:32:02  profilanswer
 

autant pour moi :)

n°192783
benou
Posté le 09-08-2002 à 11:35:32  profilanswer
 

--greg-- a écrit a écrit :

autant pour moi :)




 
je suis tombé dessus hier ! ;)

n°192793
--greg--
Posté le 09-08-2002 à 11:38:15  profilanswer
 

benou a écrit a écrit :

 
 
je suis tombé dessus hier ! ;)



lol
euh
je vois pas bien à quoi ça peut servir par contre. concretement.
(enfin ptet que si j'y pensais 20 secondes, je trouverais :??:)

n°192801
benou
Posté le 09-08-2002 à 11:39:30  profilanswer
 

pour certains algos ... ou pour de l'optimsation ou pour éviter de coder une liste chainée à la main ...
 
c'est clair que mio je m'en suis jamais servi ! ;)

n°192819
--greg--
Posté le 09-08-2002 à 11:47:16  profilanswer
 

benou a écrit a écrit :

pour certains algos ... ou pour de l'optimsation ou pour éviter de coder une liste chainée à la main ...
 
c'est clair que mio je m'en suis jamais servi ! ;)



euh oui d'accord mais ce que je voulais demander c à quoi pouvait servir une liste doublement chainée
(pas de diplome powa:D)

n°192820
Cherrytree
cn=?
Posté le 09-08-2002 à 11:48:06  profilanswer
 

--greg-- a écrit a écrit :

lol
euh
je vois pas bien à quoi ça peut servir par contre. concretement.
(enfin ptet que si j'y pensais 20 secondes, je trouverais :??:)



A circuler dans les deux sens dans ta liste. Par contre dans le JDK, il n'existe pas de liste simplement chainée. :o


---------------
Le site de ma maman
n°192825
El_gringo
Posté le 09-08-2002 à 11:49:28  profilanswer
 

Cherrytree a écrit a écrit :

A circuler dans les deux sens dans ta liste. Par contre dans le JDK, il n'existe pas de liste simplement chainée. :o  




 
Ouais, normalement, c ça, ms apparement LinkedList ne permet pas ça !  :(

mood
Publicité
Posté le 09-08-2002 à 11:49:28  profilanswer
 

n°192826
El_gringo
Posté le 09-08-2002 à 11:50:10  profilanswer
 

Oups, g rien dit ! :D
ListIterator !
Génial.
Merci  :hello:

n°192829
El_gringo
Posté le 09-08-2002 à 11:51:15  profilanswer
 

--greg-- a écrit a écrit :

euh oui d'accord mais ce que je voulais demander c à quoi pouvait servir une liste doublement chainée
(pas de diplome powa:D)




 
c plus pratique quand t'as besoin de pouvoir parcourir les éléments dans les 2 sens.

n°192836
benou
Posté le 09-08-2002 à 11:56:57  profilanswer
 

El_Gringo a écrit a écrit :

 
 
Ouais, normalement, c ça, ms apparement LinkedList ne permet pas ça !  :(  




si avec les iterator !

n°192837
--greg--
Posté le 09-08-2002 à 11:57:03  profilanswer
 

Cherrytree a écrit a écrit :

A circuler dans les deux sens dans ta liste. Par contre dans le JDK, il n'existe pas de liste simplement chainée. :o  



:o j'ai dit "concrètement"

n°192839
benou
Posté le 09-08-2002 à 11:57:14  profilanswer
 

El_Gringo a écrit a écrit :

Oups, g rien dit ! :D
ListIterator !
Génial.
Merci  :hello:  




oups maxi-grilled !

n°192859
El_gringo
Posté le 09-08-2002 à 12:07:52  profilanswer
 

--greg-- a écrit a écrit :

:o j'ai dit "concrètement"




 
Et bah, imagine, t'as 15 éléments ds ta liste.
Tu possèdes l'élément 11, et tu veux le 10, et bah la c utile ! :D
y a pas plus concret ! :D
Plus sérieusement, je sais pas vraiment, je "traduit" un truc écrit en C++ vers mon appli Java, alors en voyant une liste doublement chainée ds le truc C++, j'utilise tout simplement moi aussi une liste doublement chainée.

n°192860
El_gringo
Posté le 09-08-2002 à 12:08:10  profilanswer
 

J'pourrais t'en dire plus une fois que j'aurais avancé ds mon truc.

n°192862
--greg--
Posté le 09-08-2002 à 12:09:23  profilanswer
 

El_Gringo a écrit a écrit :

 
 
Et bah, imagine, t'as 15 éléments ds ta liste.
Tu possèdes l'élément 11, et tu veux le 10, et bah la c utile ! :D
y a pas plus concret ! :D
Plus sérieusement, je sais pas vraiment, je "traduit" un truc écrit en C++ vers mon appli Java, alors en voyant une liste doublement chainée ds le truc C++, j'utilise tout simplement moi aussi une liste doublement chainée.
 




euh ouais
ça j'avais compris hein . c pas SUPER concret. je voulais dire "concretement", pas au niveau "code", mais au niveau "fonctionnalité". dans quel cas ça peut servir quoi. rah.

n°192877
Cherrytree
cn=?
Posté le 09-08-2002 à 12:34:54  profilanswer
 

--greg-- a écrit a écrit :

 
euh ouais
ça j'avais compris hein . c pas SUPER concret. je voulais dire "concretement", pas au niveau "code", mais au niveau "fonctionnalité". dans quel cas ça peut servir quoi. rah.



Parcours des noeuds d'un graphe ?


---------------
Le site de ma maman
n°192879
darklord
You're welcome
Posté le 09-08-2002 à 12:35:25  profilanswer
 

si ta structure de données est propre tu dois pouvoir te débrouiller sans.


---------------
Just because you feel good does not make you right
n°192883
--greg--
Posté le 09-08-2002 à 12:43:05  profilanswer
 

Cherrytree a écrit a écrit :

Parcours des noeuds d'un graphe ?



hmmoué ok.
enfin. ds un cas comme ça, il te faudrait qd meme une implementation spécialisée me semble. bref...

n°192887
Cherrytree
cn=?
Posté le 09-08-2002 à 12:49:11  profilanswer
 

--greg-- a écrit a écrit :

hmmoué ok.
enfin. ds un cas comme ça, il te faudrait qd meme une implementation spécialisée me semble. bref...



C'est sur. ça doit aussi pouvoir servir pour réaliser les chainages avant et arrière dans les systèmes experts. De m'en demandez pas plus, là, j'étale ma confiture.


---------------
Le site de ma maman
n°192931
gfive
Posté le 09-08-2002 à 13:57:07  profilanswer
 

Dark : pas forcément....Genre, pour une fonctionnalité bête, du type affichage d'une liste de machins DANS LES DEUX SANS, et cyclique...ben...c'est 'achtement pratique..

n°192934
gfive
Posté le 09-08-2002 à 13:59:16  profilanswer
 

Cherrytree a écrit a écrit :

A circuler dans les deux sens dans ta liste. Par contre dans le JDK, il n'existe pas de liste simplement chainée. :o  




 
Pas de liste simplement chaînée???? BAh...tout ce qui implémente List, tu peux récupérer un Iterator dessus....
Alors Vector, ArrayList, etc...ben c'en est, non??

n°192938
Cherrytree
cn=?
Posté le 09-08-2002 à 14:05:42  profilanswer
 

gfive a écrit a écrit :

 
 
Pas de liste simplement chaînée???? BAh...tout ce qui implémente List, tu peux récupérer un Iterator dessus....
Alors Vector, ArrayList, etc...ben c'en est, non??



Ben non, c'est pas des Listes chaînées. Au sens fonctionnalités, ça marche pareil, mais pas au sens de l'implémentation. Voilà.
 
Vector et ArrayList, ce sont des tableaux qui ont la faculté de se copier dans un tableau de plus grande capacité automatiquement, que le tableau précédent est trop petit.


---------------
Le site de ma maman
n°192942
gfive
Posté le 09-08-2002 à 14:09:54  profilanswer
 

ouais...bon.....mais je te merde, d'abord, voilà, c'est tout, et toc! :D

n°192944
El_gringo
Posté le 09-08-2002 à 14:14:19  profilanswer
 

Cherrytree a écrit a écrit :

A circuler dans les deux sens dans ta liste. Par contre dans le JDK, il n'existe pas de liste simplement chainée. :o  




 
...Qui peut le plus peut le moins ! Rien ne te force à utiliser le double chainage, et niveau perfs, j'pense pas qu'une référence en plus par noeud soit perceptible.

n°192963
Cherrytree
cn=?
Posté le 09-08-2002 à 14:37:01  profilanswer
 

El_Gringo a écrit a écrit :

 
 
...Qui peut le plus peut le moins ! Rien ne te force à utiliser le double chainage, et niveau perfs, j'pense pas qu'une référence en plus par noeud soit perceptible.



Ben si ta structure est plus lourde et doit faire des références supplémentaires en cas d'ajout, suppression.


---------------
Le site de ma maman
n°192965
Cherrytree
cn=?
Posté le 09-08-2002 à 14:37:33  profilanswer
 

gfive a écrit a écrit :

ouais...bon.....mais je te merde, d'abord, voilà, c'est tout, et toc! :D



:lol: Mauvais joueur ! :D


---------------
Le site de ma maman
n°192971
gfive
Posté le 09-08-2002 à 14:42:00  profilanswer
 

voui, et alors! :p

n°192973
El_gringo
Posté le 09-08-2002 à 14:44:10  profilanswer
 

gfive a écrit a écrit :

voui, et alors! :p




 
Ho, viens on y pète sa gueule !? :D

n°192974
Cherrytree
cn=?
Posté le 09-08-2002 à 14:45:09  profilanswer
 

El_Gringo a écrit a écrit :

 
 
Ho, viens on y pète sa gueule !? :D



Bien par là petit. [:cherrytree2] maîtrise la Force.


---------------
Le site de ma maman
n°193031
MelloW
Posté le 09-08-2002 à 16:10:58  profilanswer
 

Cherrytree a écrit a écrit :

Ben si ta structure est plus lourde et doit faire des références supplémentaires en cas d'ajout, suppression.



Oui mais ;) Si t'as par exemple un pointeur qui se baladent de gauche à droite (et de droite à gauche) pour je ne sais quelle raison (j'ai déjà vu ca dans un buddy system -> gestion de mémoire je crois... y a longtemps :pt1cable:)... et que tu dois éliminer l'élèment référencé par le pointeur -> tu fais en sorte que le prédecesseur référence l'élèment suivant le pointeur et vice versa (le suivant référence le prédecesseur). Donc l'élèment en question ne sera plus dans la liste et pourra être garbage collecté. Avec une LinkedList normale tu devras faire une iteration supplémentaire pour  trouver le prédecesseur (et mettre les références à jour).
Enfin... y a que quand tu fais des iterations dans les 2 senses que le DoublyLinkedList a de l'intèrêt (-> au sinon tu pourrais utiliser un pointeur supplémentaire qui garde le prédecesseur).


---------------
Belgian Connection
n°193054
Cherrytree
cn=?
Posté le 09-08-2002 à 16:26:42  profilanswer
 

:heink: Si j'ai bien compris, t'es en train d'essayer de m'expliquer ce qu'est une liste doublement chaînée ?! ?! ?! [:zebra33]


---------------
Le site de ma maman
n°193058
El_gringo
Posté le 09-08-2002 à 16:27:59  profilanswer
 

MelloW a écrit a écrit :

Oui mais ;) Si t'as par exemple un pointeur qui se baladent de gauche à droite (et de droite à gauche) pour je ne sais quelle raison (j'ai déjà vu ca dans un buddy system -> gestion de mémoire je crois... y a longtemps :pt1cable:)... et que tu dois éliminer l'élèment référencé par le pointeur -> tu fais en sorte que le prédecesseur référence l'élèment suivant le pointeur et vice versa (le suivant référence le prédecesseur). Donc l'élèment en question ne sera plus dans la liste et pourra être garbage collecté. Avec une LinkedList normale tu devras faire une iteration supplémentaire pour  trouver le prédecesseur (et mettre les références à jour).
Enfin... y a que quand tu fais des iterations dans les 2 senses que le DoublyLinkedList a de l'intèrêt (-> au sinon tu pourrais utiliser un pointeur supplémentaire qui garde le prédecesseur).




 
Surement très juste, ms t à coté ! :D
Justement, DoublyLinkedList n'existe pas. C'est LinkedList qui est une liste doublement chainée. CherryTree se plaignait de la non existance de liste simplement chainée dans le JDK.
Parce qu'en fait il sait pas programmer une liste chainée ! (Rooh l'autre, hé ! :D)


Message édité par El_gringo le 09-08-2002 à 16:28:17
n°193073
MelloW
Posté le 09-08-2002 à 16:36:34  profilanswer
 

:pt1cable: comprend plus rien là :D
un linkedlist -> chaque élèment a un pointeur vers le prochain
une doublylinkedlist -> vers le prédecesseur et vers le prochain
enfin c'est comme ca dans les cours d'algo et de "data structures"
:pt1cable: comprends mieux maintenant ;)
Sorry :D


---------------
Belgian Connection
n°193083
Cherrytree
cn=?
Posté le 09-08-2002 à 16:44:59  profilanswer
 

El_Gringo a écrit a écrit :

 
 
Surement très juste, ms t à coté ! :D
Justement, DoublyLinkedList n'existe pas. C'est LinkedList qui est une liste doublement chainée. CherryTree se plaignait de la non existance de liste simplement chainée dans le JDK.
Parce qu'en fait il sait pas programmer une liste chainée ! (Rooh l'autre, hé ! :D)



Heureusement que tu blagues, petit père. :D


---------------
Le site de ma maman
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Liste doublement chainée

 

Sujets relatifs
Supprimer des valeurs sélectionnées dans une zone de liste ?Liste des codes html des char spéciaux
Liste des composants ActiveX[Java] liste de paramètres en ligne de commande...
utilisation du doc XML ave une liste deroulanteliste chainée circulaire
[PHP] Récupérer la liste des paramètres passés via URL [résolu][JavaScript] Récupérer la liste des fonts dispos sur le client
Plus de sujets relatifs à : Liste doublement chainée


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR