#include<iostream>
#include<stdlib.h>
using namespace std;
typedef struct Node2{
int num;
Node2 *next;
Node2 *pre;
}Node2;
void init(Node2 *head,int len){
Node2 *head2=head;
for(int i=0;i<len;i++){
Node2 *node=(Node2 *)malloc(sizeof(Node2));
node->num=i;
head2->next=node;
node->pre=head2;
head2=node;
}
head2->next=NULL;
}
void print(Node2 *head){
Node2 *head1=head->next,*back;
while(head1!=NULL){
cout<<head1->num<<" ";
back=head1;
head1=head1->next;
}
cout<<endl;
Node2 *head2=back;
while(head2!=NULL){
if(head2->pre!=NULL)cout<<head2->num<<" ";
head2=head2->pre;
}
cout<<endl;
}
int main(int argc, char const *argv[]){
Node2 *head=(Node2 *)malloc(sizeof(Node2));
head->next=NULL;
head->pre=NULL;
init(head,5);
print(head);
return 0;
}