亚洲AV乱码一区二区三区女同,欧洲在线免费高清在线a,中文字幕丝袜四区,老少配老妇熟女中文高清

<s id="38axe"><nobr id="38axe"></nobr></s><abbr id="38axe"><u id="38axe"></u></abbr>

<sup id="38axe"></sup>
    <acronym id="38axe"></acronym>
  • <s id="38axe"><abbr id="38axe"><ins id="38axe"></ins></abbr></s>
    
    
        <s id="38axe"></s>

        2009年上半年軟考軟件設(shè)計師下午試卷[9]

        軟件設(shè)計師 責任編輯:iorilzc 2009-05-24

        添加老師微信

        備考咨詢

        加我微信

        摘要:試題五(共15分)閱讀下列說明和C函數(shù)代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)。【說明】對二叉樹進行遍歷是二叉樹的一個基本運算。遍歷是指按某種策略訪問二叉樹的每個結(jié)點,且每個結(jié)點僅訪問一次的過程。函數(shù)InOrder()借助棧實現(xiàn)二叉樹的非遞歸中序遍歷運算。設(shè)二叉樹采用二叉鏈表存儲,結(jié)點類型定義如下:

          試題五(共 15 分)

          閱讀下列說明和C 函數(shù)代碼,將應(yīng)填入 (n) 處的字句寫在答題紙的對應(yīng)欄內(nèi)。

          【說明】

          對二叉樹進行遍歷是二叉樹的一個基本運算。遍歷是指按某種策略訪問二叉樹的每個結(jié)點,且每個結(jié)點僅訪問一次的過程。函數(shù)InOrder()借助棧實現(xiàn)二叉樹的非遞歸中序遍歷運算。

          設(shè)二叉樹采用二叉鏈表存儲,結(jié)點類型定義如下:

          typedef struct BtNode{
          ElemType  data;  /*結(jié)點的數(shù)據(jù)域,ElemType的具體定義省略*/
          struct BtNode *lchild,*rchild;  /*結(jié)點的左、右孩子指針域*/
          }BtNode, *BTree;
          在函數(shù)InOrder()中,用棧暫存二叉樹中各個結(jié)點的指針,并將棧表示為不含頭結(jié)點
          的單向鏈表(簡稱鏈棧),其結(jié)點類型定義如下:
          typedef struct StNode{  /*鏈棧的結(jié)點類型*/
          BTree elem;  /*棧中的元素是指向二叉鏈表結(jié)點的指針*/
          struct StNode *link;
          }StNode;

          假設(shè)從棧頂?shù)綏5椎脑貫?en、en-1、…、e1,則不含頭結(jié)點的鏈棧示意圖如圖5-1所示。

          【C函數(shù)】

          int  InOrder(BTree root)  /* 實現(xiàn)二叉樹的非遞歸中序遍歷  */
          {
          BTree ptr; /* ptr用于指向二叉樹中的結(jié)點  */
          StNode *q;  /* q暫存鏈棧中新創(chuàng)建或待刪除的結(jié)點指針*/
          StNode *stacktop = NULL;  /* 初始化空棧的棧頂指針stacktop */
          ptr = root;  /* ptr指向二叉樹的根結(jié)點  */
          while ( (1)  || stacktop != NULL) {
          while (ptr != NULL) {
          q = (StNode *)malloc(sizeof(StNode));
          if (q == NULL)
          return -1;
          q->elem = ptr;
          (2)  ;
          stacktop = q;  /*stacktop指向新的棧頂*/
          ptr = (3)  ; /*進入左子樹*/
          }
          q = stacktop;
          (4)  ;  /*棧頂元素出棧*/
          visit(q);  /*visit是訪問結(jié)點的函數(shù),其具體定義省略*/
          ptr = (5)  ;  /*進入右子樹*/
          free(q);  /*釋放原棧頂元素的結(jié)點空間*/
          }
          return 0;
          }/*InOrder*/ 
          [答案討論]

        [1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]  [10]  [11]  

        溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請考生以權(quán)威部門公布的內(nèi)容為準!

        軟考備考資料免費領(lǐng)取

        去領(lǐng)取

        !
        咨詢在線老師!