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

數據結構考研分類復習真題 第十章 排序[50]

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

  .解答問題

  ()(分)設某文件中待排序記錄的排序碼為試畫圖表示出樹形選擇排序(增序)過程的前三步

  ()(分) 試說明樹形選擇排序的基本思想

  ()(分) 樹形選擇排序與直接選擇排序相比較優缺點是什麼?

  ()(分) 堆排序是如何改進樹形排序方法的?優點是什麼?【山東大學 五(分)】  【山東工業大學 五 (分)】

   若有N個元素已構成一個小根堆  那麼如果增加一個元素為Kn+請用文字簡要說明你如何在logn 的時間內將其重新調整為一個堆?【中科院計算所 (分)】

  .填空並回答相關問題

  ()下面是將任意序列調整為最大堆(MAX HEAP)的算法請將空白部分填上

  將任意序列調整為最大堆通過不斷調用adjust函數FOR(i=n/;i >;i )adjust(listin);其中list為待調整序列所在數組(從下標開始)n為序列元素個數adjust函數為

  void  adjust(int list[]int rootint n)
  /*將以root為下標的對應元素作為待調整堆的根待調整元素放在list數組中最大元素下標為n*/
  {int childrootkey;
  rootkey=list[root];
  child=*root;
  while(child<=n)
  {if((child<n)&&(list[child]<list[child+]))
  ()_______;
  if(rootkey>list[child])
  break;
  else{List[()_______]=list[child];
  child*=;
  }
  }
  list[child/]=rootkey;
  }

  ().判斷下列序列能否構成最大堆();若不能按上述算法將其調整為堆調整後的結果為(    )【浙江大學 七 (分)】

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


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