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

數據結構考研分類復習真題 第六章 答案 (五)[23]

2013-11-15 15:38:39  來源: 數據結構 

   PROC print(bt:BiTreexy:integer)
  //將二叉樹逆時針旋轉度打印xy是根結點基准坐標調用時xy=
  IF bt<>NIL THEN [ print(bt↑rchildxy+);     //中序遍歷右子樹
  writeln(bt>data:xy);        //訪問根結點
  print(bt↑lchildxy+);]    //中序遍歷左子樹
  ENDP;

  BiTree creat()//生成並中序輸出二叉排序樹
  {scanf(%c&ch) //ch是二叉排序樹結點值的類型變量假定是字符變量
  BiTree bst=nullf=null;
  while(ch!=#)                    //#是輸入結束標記
  {s=(BiTree)malloc(sizeof(BiNode)); //申請結點
  s>data=ch; s>lchild=s>rchild=null;
  if (bst==null) bst=s;            //根結點
  else                             //查找插入結點
  {p=bst;
  while(p)
  if (ch>p>data) {f=p; p=p>rchild;}         //沿右分枝查f是雙親
  else {f=p; p=p>lchild;}                    //沿左分枝查
  if(f>data<ch) f>rchild=s; else f>lchild=s;}//將s結點插入樹中
  scanf(%c&ch);  //讀入下一數據
  } //while (ch!=#)
  return(bst); } //結束 creat
  void InOrder(BiTree bst)     //bst是二叉排序樹中序遍歷輸出二叉排序樹
  {if(bst)
  {InOrder (bst>lchild); printf(bst>data); InOrder(bst>rchild); }
  }//結束InOrder

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


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