// list.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream>using namespace std;typedef struct list_node { int data; list_node *left; list_node *right;} Node;Node *create_node(int data){ Node *node = new Node(); node->data = data; node->left = node->right = NULL; return node;}void delete_node( Node * p ){ delete p; p = NULL ;}void insert_tail(Node *root , int data){ Node *node = create_node( data ); Node *last_node = root; while(last_node->right != NULL) last_node = last_node->right; last_node->right = node; node->left = last_node;}Node *find_node(Node *root , int data ){ Node *node = root ; while(node != NULL) { if( data == node->data ) { return node; } node = node->right; } return NULL;}void insert_back_node(Node *root, int dat , int data ){ Node *node = find_node(root,dat); if( node == NULL || node->left == NULL ) return; Node *new_node = create_node( data ); node->left->right = new_node; new_node->right = node;}void insert_front_node(Node *root, int dat , int data ){ Node *node = find_node(root,dat); if( node == NULL ) return; Node *new_node = create_node( data ); new_node->right = node->right; new_node->left = node; node->right = new_node;}void remote_node ( Node *root,int data ){ Node *node = find_node ( root , data ); if( node == NULL ) { return ; } else if ( node->left == NULL ) { node->right->left = NULL; } else if ( node->right == NULL ) { node->left->right = NULL ; } else { node->left->right = node->right; node->right->left = node->left; } delete_node( node );}void traversal( Node *root ){ Node *last_node = root; do{ cout<<last_node->data<<endl ; last_node = last_node->right; } while(last_node != NULL ) ;}int main(int argc, char* argv[]){ Node *root = create_node(1); insert_tail(root,4); insert_tail(root,5); insert_tail(root,800); insert_tail(root,6); insert_tail(root,7); Node *p = find_node(root,5); cout << p <<endl; if(p!=NULL) cout<<p->data <<endl; insert_back_node(root,5,20); insert_front_node(root,1,30); remote_node ( root , 6 ) ; traversal( root ); return 0;}