Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.81 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. typedef struct pointer
  4.          { int info;
  5.            struct pointer *LPTR;
  6.            struct pointer *RPTR;
  7.          } ds;
  8. ds *l,*r,*q,*M;
  9. int n,i,m,d;
  10. void main()
  11. {
  12.     printf(" Nhap vao so phan tu muon nhap n= ");
  13.     scanf("%d",&n);
  14.     l=NULL;r=NULL;
  15.     for(i=1;i<=n;i++)
  16.     {
  17.         q=(ds *)malloc(sizeof(ds));
  18.         printf("\n phan tu thu %d ",i);
  19.         scanf("%d",&q->info);
  20.         if(l==NULL)
  21.         {
  22.             q->LPTR=NULL;
  23.             q->RPTR=NULL;
  24.             l=r=q;
  25.         }
  26.         else
  27.         {
  28.             q->LPTR=NULL;
  29.             q->RPTR=l;
  30.             l->LPTR=q;
  31.             l=q;
  32.         }
  33.     }
  34.     l=q;
  35.     printf(" \n Day vua nhap:");
  36.     for(i=1;i<=n;i++)
  37.     {
  38.         printf("%2d",q->info);
  39.         q=q->RPTR;
  40.     } printf("............ Day bi in nguoc nay");
  41.     printf("\n hay nhap tu ban phim , thu tu phan tu muon tro toi \n");
  42.     printf("chu y rang , so can nhap phai nho hon %d ",n);
  43.     printf("m = ");
  44.     do
  45.     {
  46.         scanf("%d",&m);
  47.     }while(m>n);
  48.     d=1;q=l;
  49.     for(d=1;d<=m-1;d++)
  50.     {
  51.         q=q->RPTR;
  52.     }
  53.     M=q;
  54.     printf(" Hay nhap gia tri phan tu muon bo sung sau con tro M ");
  55.     q=(ds*)malloc(sizeof(ds));
  56.     scanf("%d",&q->info);
  57.     if(M==r)
  58.     {
  59.         q->RPTR=NULL;
  60.         q->LPTR=M;
  61.         M->RPTR=q;
  62.         r=q;
  63.     }
  64.     else
  65.     {
  66.         q->LPTR=M;
  67.         q->RPTR=M->RPTR;
  68.         M->RPTR=q;
  69.         q->RPTR->LPTR=q;
  70.     }
  71.     n++;
  72.     printf("ta co danh sach sau khi them vao phan tu moi gom %d phan tu \n ",n);
  73.     q=r;
  74.     while(q!=NULL)
  75.     {
  76.         printf("%d",q->info);
  77.         q=q->LPTR;
  78.     }
  79.     // xoa phan tu duoc tro boi M
  80.     if((M==l)&&(M==r))
  81.     {
  82.         l=NULL;
  83.         r=NULL;
  84.     }
  85.     if(M==l)
  86.     {
  87.         l=l->RPTR;
  88.         l->LPTR=NULL;
  89.         M->RPTR=NULL;
  90.     }
  91.     if(M==r)
  92.     {
  93.         r=r->LPTR;
  94.         r->RPTR=NULL;
  95.         M->LPTR=NULL;
  96.     }
  97.     else
  98.     {
  99.         M->LPTR->RPTR=M->RPTR;
  100.         M->RPTR->LPTR=M->LPTR;
  101.     }
  102.     free(M);
  103.     printf("\n danh sach sau khi da bo di 1 phan tu duoc tro boi con tro M la :\n ");
  104.     q=r;
  105.     while(q!=NULL)
  106.     {
  107.         printf("%d",q->info);
  108.         q=q->LPTR;
  109.     }
  110.  
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement