中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

樹存儲結構的幾種表示方法

發布時間:2020-09-06 08:41:18 來源:腳本之家 閱讀:207 作者:BLSxiaopanlaile 欄目:編程語言

名稱:樹存儲結構的幾種表示方法

說明:對于樹的存儲結構,一般有以下三種表示方法。

  • (1)、雙親表示法。這種存儲方式采用一組連續的空間來存儲每個結點,同時在每個結點中增設一個偽指針,
  • 指示其雙親在結點中的位置。這種方式比較容易找到雙親,但是不容易找到孩子。
  • (2)、孩子表示法。這種方法是將每個結點的孩子結點都用鏈表鏈接起來形成一個線性結構。這種方式比較
  • 容易找到結點的孩子,但是不容易找到其雙親。
  • (3)、孩子兄弟表示法。這種方式通俗的說是:“左結點是第一個孩子,右結點是下一個兄弟”。這種方式比較靈活,因為其可以轉化為二叉樹,對其的操作一般都能轉化為二叉樹的相關操作。

總之,選用不同的存儲結構要根據具體的用途。(這當然是廢話)。想說的是,在做一些題的時候,如果可以不用選用二叉樹這種相對復雜的存儲結構,那就選擇線性的結構。對我來說,線性結構比二維的樹的結構用的順手。

//樹的存儲結構之雙親表示法
//樹的結點定義
typedef struct
{
  int data;  //數據元素
  int parent;   //雙親的位置
}PTNode;
//樹的類型定義
typedef struct
{
  //PTNode nodes[MAXSIZE];   //雙親表示
  int n;         //結點數
}PTree;
//樹的存儲結構之孩子表示法
//鏈表中孩子結點表示
typedef struct CHNode
{
  int pos;  //孩子的位置
  CHNode *next;  //指向下一個孩子的指針
}CHNode;
//數組中雙親結點表示
typedef struct CHNode1
{
  int data;    //數據元素
  CHNode *firChild;  //指向第一個孩子的指針
}CHNode1;
//樹的類型表示
typedef struct
{
  CHNode1 nodes[MAXSIZE];   //所有的結點
  int n;   //節點的個數
}CHTree;
//樹的存儲結構之孩子兄弟表示法
typedef struct CSNode
{
  int data;  //結點的數據
  CSNode *firstchild,*nextbling;  //第一個孩子和下一個兄弟
}CSNode,*CSTree;

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

瓦房店市| 济阳县| 张家界市| 启东市| 乌什县| 盐边县| 韶山市| 静宁县| 驻马店市| 海林市| 沂源县| 大港区| 茂名市| 连山| 巴林右旗| 巫溪县| 都兰县| 乌兰浩特市| 丰台区| 克什克腾旗| 昆明市| 六枝特区| 南木林县| 石嘴山市| 赞皇县| 体育| 辽宁省| 新乐市| 迭部县| 石棉县| 永泰县| 东丽区| 德昌县| 三都| 宁晋县| 伊宁县| 临邑县| 西青区| 保康县| 玛纳斯县| 新野县|