View difference between Paste ID: ZG6Ykms8 and VwtcdReg
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
}