#include#include using namespace std;#define size 1000struct node{ int num; node *next; node *pre;};node NodeListPool[size];int index = 0;node nil;node *NIL;void init(){ NIL = & nil; NIL->next = NIL; NIL->pre = NIL; NIL->num = -100;}node *getNewNode(){ return &NodeListPool[index++];}void insert(node *target, node *newNode){ newNode->next = target->next; newNode->pre = target; target->next = newNode; newNode->next->pre = newNode;}node *search(int key){ node *tmp = NIL->next; while(tmp != NIL && tmp ->num != key) { tmp = tmp -> next; } return tmp;}void deleteNode(node *node){ node->pre->next = node->next; node->next->pre = node->pre;}int main(){ init(); node *tmpNode = NIL; for(int i = 0; i < 100 ;i++) { int tmp = rand()%100 + 1; cout << tmp << endl; node *newNode = getNewNode(); newNode ->num = tmp; insert(tmpNode,newNode); tmpNode = tmpNode->next; } cout << "-------------------------------------"<< endl; tmpNode = NIL; while(tmpNode->next != NIL) { cout << tmpNode->next->num << endl; tmpNode = tmpNode->next; } return 0;}