LeetCode刷題助手 根據陣列生成二叉樹

2021-09-11 02:29:13 字數 826 閱讀 8943

大家在刷leetcode的二叉樹相關的題目的時候,遇到問題需要在本地ide裡除錯的時候,題目裡給的二叉樹的形式是乙個陣列,類似

integer array = new integer;
這種形式,它是以null來做填充,構成乙個完全二叉樹,具體的圖我就不畫了,大家自己理解一下。而我們需要自己手動把它轉換成二叉樹的形式,再把這個二叉樹作為引數來進行解題。

因為感覺這樣做十分的麻煩,所以我寫了乙個轉換方法,可以把上面這種型別的陣列自動轉化為乙個二叉樹。

首先定義二叉樹節點:

class treenode 

}

轉換方法如下:

public static treenode convert(integer array) 

for (int i = start; i < end; i++) else

if (i > 0) else }}

}count++;

}floor++;

}return treenodes[0];

}

測試**:

public static void main(string args) ;

treenode root = convert(array);

}

用debug檢視結果:

我沒有寫特別多的測試用例,所以用的時候如果有問題,麻煩自己除錯修改一下。

LeetCode刷題 醜數

編寫乙個程式判斷給定的數是否為醜數。醜數就是只包含質因數 2,3,5 的正整數。示例 1 輸入 6 輸出 true 解釋 6 2 3 示例 2 輸入 8 輸出 true 解釋 8 2 2 2 示例 3 輸入 14 輸出 false 解釋 14 不是醜數,因為它包含了另外乙個質因數 7。說明 1 是醜...

LeetCode刷題 醜數

編寫乙個程式判斷給定的數是否為醜數。醜數就是只包含質因數 2,3,5 的正整數。示例 1 輸入 6 輸出 true 解釋 6 2 3 示例 2 輸入 8 輸出 true 解釋 8 2 2 2 示例 3 輸入 14 輸出 false 解釋 14 不是醜數,因為它包含了另外乙個質因數 7。說明 1 是醜...

LeetCode刷題 回文數

給你乙個整數 x 如果 x 是乙個回文整數,返回 ture 否則,返回 false 回文數是指正序 從左向右 和倒序 從右向左 讀都是一樣的整數。例如,121 是回文,而 123 不是。示例 1 輸入 x 121 輸出 true 示例 2 輸入 x 121 輸出 false 解釋 從左向右讀,為 1...