bonjour
alors voila je voudrais faire une liste chainée en c++ mais d'après se que je vois sur internet trés peu voir pas du tout de tuto existe.
du coup le langage c++ a t'il ou non la notion de liste chainée ?
si oui
j'ai ce programme en C qui représente une liste chainée
est ce la meme façon de faire en c++ ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88 #include <stdio.h> #include <stdlib.h> #include <malloc.h> struct cellule { int entier; struct cellule *suivant; }; struct cellule *tete; struct cellule *courant; struct cellule *nouveau; struct cellule *precedent; int main () { int valeur; int flag; tete = NULL; printf("entrer une valeur\n"); scanf("%d", &valeur); while(valeur != 0) { if(valeur != 0) { flag = 0; nouveau = (struct cellule *) malloc(sizeof(struct cellule)); nouveau->entier = valeur; nouveau->suivant = NULL; if( tete == NULL) { tete = nouveau; flag = 1; } courant = tete; while(flag == 0 & courant != NULL) { if( tete->entier > nouveau->entier) { tete = nouveau; tete->suivant = courant; flag = 1; } if( courant->entier < nouveau->entier && courant->suivant == NULL) { courant->suivant = nouveau; flag = 1; } if( nouveau->entier <= courant->entier && flag == 0) { nouveau->suivant = courant; precedent->suivant = nouveau; flag = 1; } if(flag == 1) { courant = tete; precedent = courant; } else { precedent = courant; courant = courant->suivant; } } } printf("entrer une valeur\n"); scanf("%d", &valeur); } while(courant != NULL) { printf("entier = %d\n", courant->entier); courant = courant->suivant; } }
et encore une fois si oui peut on faire une liste chainée en fonction d'un objet ?
Partager