熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

第二部分 棧、隊列和數組[7]

2022-06-13   來源: 數據結構 

  基本操作
  ①初始化
  StatusInitQueue(LinkQueue&Q){//構造一個空隊列Q
  Qfront=Qrear=
  (QueuePtr)malloc(sizeof(QNode));
  if(!Qfront)exit(OVERFLOW);//存儲分配失敗
  Qfront>next=NULL;
  returnOK;
  }

  ②入隊
  StatusEnQueue(LinkQueue&Q
  QElemTypee){//插入元素e為Q的新的隊尾元素
  p=(QueuePtr)malloc(sizeof(QNode));
  if(!p)exit(OVERFLOW);//存儲分配失敗
  p>data=e;p>next=NULL;
  Qrear>next=p;Qrear=p;
  returnOK;
  }

  ③出隊
  StatusDeQueue(LinkQueue&Q
  QElemType&e){
  //若隊列不空則刪除Q的隊頭元素
  //用e返回其值並返回OK否則返回ERROR
  if(Qfront==Qrear)returnERROR;
  p=Qfront>next;e=p>data;
  Qfront>next=p>next;
  if(Qrear==p)Qrear=Qfront;
  free(p);returnOK;
  }

    返回《數據結構》考研復習精編

[]  []  []  []  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/sjjg/201311/23974.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.