資料結構與演算法 陣列和單鏈表轉平衡二叉樹

2021-07-25 20:19:53 字數 560 閱讀 6720

題目108公升序陣列轉平衡二叉樹

【思路】每次都找到陣列中間的元素,作為跟節點,左半部分組成根節點的坐子樹,右半部分組成根節點的右子樹。採用遞迴的做法。

題目109公升序單鏈表轉平衡二叉樹

【思路1】單鏈表的話,取中間的元素不容易,因此首先將單鏈表轉化為陣列,而後採用上述方法解決。

【思路2】

與陣列思路相同,每次通過遍歷,找到單鏈表的中間節點和最後的節點。方法時,在遍歷單鏈表偶的過程中,儲存三個指標,最終第乙個指標指向中間節點的前乙個節點,第二個指標指向中間節點,第三個指標指向最後的節點。同樣採用遞迴的方法。

資料結構與演算法 陣列

陣列是一種線性表資料結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。其中有幾個重要的概念 非線性表 連續的記憶體空間 儲存相同型別的資料 如圖所示,這是乙個長度為5的int陣列arr,我們假設起始的記憶體位址為1000,那麼第乙個元素的記憶體位址範圍就是 1000 1003,這是因為乙...

資料結構與演算法 陣列

題型1 如何用遞迴實現陣列求和 方法1 題型2 如何用乙個for迴圈列印乙個二維陣列 方法1 array在二維陣列中的行號和列號分別為 i maxy i maxy 題型3 用遞迴和非遞迴的方法實現二分查詢 題型4 如何在排序陣列中,找出給定數字出現的次數 方法1 二分查詢,分別找出左邊界和右邊界,左...

資料結構與演算法 陣列

陣列是由相同型別的元素 element 的集合所組成的資料結構,分配一塊連續的記憶體來儲存。利用元素的索引 index 可以計算出該元素對應的儲存位址。維基百科 陣列是線性表資料結構,定義陣列時,系統會分配乙份連續的記憶體空間來儲存一組相同的型別的資料,如int num n 陣列定義為一維陣列 二維...