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

數據結構考研分類復習真題 第三章 答案[12]

2013-11-15 15:00:46  來源: 數據結構 

  見上題的解答

  參見上面

  typedef struct node
  {elemtype elemcq[m];  //m為隊列最大可能的容量
  int front rear;     //front和rear分別為隊頭和隊尾指針
  }cqnode;
  cqnode  cq;
  初始狀態
  cqfront=cqrear=;
  隊列空
  cqfront==cqrear;
  隊列滿
  (cqrear+)%m==cqfront;

  棧的特點是後進先出隊列的特點是先進先出初始時設棧s和棧s均為空

  ()用棧s和s模擬一個隊列的輸入設s和s容量相等分以下三種情況討論若s未滿則元素入s若s滿s則將s全部元素退棧再壓棧入s之後元素入s若s滿s不空(已有出隊列元素)則不能入隊

  ()用棧s和s模擬隊列出隊(刪除)若棧s不空退棧即是隊列的出隊若s為空且s不空則將s棧中全部元素退棧並依次壓入ss棧頂元素退棧這就是相當於隊列的出隊若棧s為空並且s也為空隊列空不能出隊

  ()判隊空 若棧s為空並且s也為空才是隊列空

  討論s和s容量之和是隊列的最大容量其操作是s棧滿後全部退棧並壓棧入s(設s和s容量相等)再入棧s直至s滿這相當隊列元素入隊完畢出隊時s退棧完畢後s棧中元素依次退棧到ss退棧完畢相當於隊列中全部元素出隊

  在棧s不空情況下若要求入隊操作只要s不滿就可壓入s若s滿和s不空狀態下要求隊列的入隊時按出錯處理

  )隊空sfront=srear                  //設s是sequeuetp類型變量

  ()隊滿(srear+)MOD MAXSIZE=sfront  //數組下標為 MAXSIZE

  具體參見本章應用題第

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


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