SHOW:
|
|
- or go back to the newest paste.
1 | #include<iostream> | |
2 | using namespace std; | |
3 | ||
4 | typedef struct element { | |
5 | int info; | |
6 | struct element *next; | |
7 | struct element *prev; | |
8 | } termen; | |
9 | class doublelist { | |
10 | private : | |
11 | int length; | |
12 | termen *start,*current,*finalist; | |
13 | int isempty() | |
14 | { | |
15 | return (length==0); | |
16 | } | |
17 | public : | |
18 | doublelist() { length=0; } | |
19 | int showlenght() {int value=length;cout<<endl<<value;} | |
20 | int addLIFO(int value) { | |
21 | ||
22 | if (isempty()) { | |
23 | element *new_one=new element; | |
24 | if (new_one!=NULL) | |
25 | { | |
26 | new_one->info=value; | |
27 | new_one->next=NULL; | |
28 | new_one->prev=NULL; | |
29 | length=1; | |
30 | start=current=finalist=new_one; | |
31 | } | |
32 | return 0; | |
33 | } | |
34 | element *new_one=new element; | |
35 | if (new_one!=NULL) { | |
36 | new_one->info=value; | |
37 | new_one->next=NULL; | |
38 | new_one->prev=finalist; | |
39 | length++; | |
40 | finalist->next=new_one; | |
41 | finalist=new_one; | |
42 | } | |
43 | return 1; | |
44 | } | |
45 | int delLIFO(int *oldtop); | |
46 | int printLIST(int direction) | |
47 | { | |
48 | ||
49 | if(direction) | |
50 | { | |
51 | cout<<endl; | |
52 | if (!isempty()) | |
53 | { | |
54 | element *carrier; | |
55 | carrier=start; | |
56 | while (carrier!=NULL) { | |
57 | cout<<carrier->info<<" "; | |
58 | carrier=carrier->next; | |
59 | } | |
60 | ||
61 | return 1;} | |
62 | return 0; | |
63 | } | |
64 | else | |
65 | { | |
66 | cout<<endl; | |
67 | if (!isempty()) | |
68 | { | |
69 | element *carrier; | |
70 | carrier=finalist; | |
71 | while (carrier!=NULL) { | |
72 | cout<<carrier->info<<" "; | |
73 | carrier=carrier->prev; | |
74 | } | |
75 | ||
76 | return 1;} | |
77 | return 0; | |
78 | } | |
79 | } | |
80 | protected : | |
81 | } somelist; | |
82 | ||
83 | ||
84 | ||
85 | int main() | |
86 | { | |
87 | for(int i=1;i<=10;i++) somelist.addLIFO(i); | |
88 | somelist.printLIST(1); | |
89 | somelist.printLIST(0); | |
90 | } |