struct node{
int Data;
node *pre;
node *next;
};
class linklist{
private:
node *head;
node *end;
public:
linklist(int D,int d){
head = new node;
end = new node;
head->pre = NULL;
head->Data = D;
head->next = end;
end->pre = head;
end->Data = d;
end->next = NULL;
}
void print(){
node *m = head;
while(m->next != NULL){
cout<<m->Data<<endl;
m = m->next;
}
cout<<m->Data<<endl;
}
void Insert_from_head(int D){
node *a = new node;
a->next = head->next;
a->Data = head->Data;
a->pre = head;
head->next = a;
head->Data = D;
}
void Insert_from_end(int D){
node *a = new node;
end->pre->next = a;
a->next = end;
a->Data = end->Data;
a->pre = end->pre;
end->pre = a;
end->Data = D;
}
};