「剣指offer」――JavaScript(22)上から下へ二叉の木を印刷する
768 ワード
二叉の木を上から下に印刷します.
テーマの説明
二叉樹の各ノードは、上から下に印刷され、同じ層のノードは左から右に印刷される.
考え方は、2つの補助列を介して、1つは、結点を保存するために使用され、1つは、結点値を保存するために使用される. は、まずルートノードをキューに追加し、その後、キュー中の要素を巡回して、要素の左右のノードにアクセスし、次に左右のサブノードをキューに参加する. コードを実現
テーマの説明
二叉樹の各ノードは、上から下に印刷され、同じ層のノードは左から右に印刷される.
考え方
/* function TreeNode(x) {
this.val = x;
this.left = null;
this.right = null;
} */
function PrintFromTopToBottom(root) {
var queue = [];
queue.push(root);
var result = [];
if (root == null) {
return result;
}
while (queue.length) {
var temp = queue.shift();
result.push(temp.val);
if (temp.left) {
queue.push(temp.left);
}
if (temp.right) {
queue.push(temp.right);
}
}
return result;
}