面试题23:从上到下打印二叉树
来源:互联网 发布:java 参数 ... 传参 编辑:程序博客网 时间:2024/06/06 00:13
剑指offer面试题23:从上到下打印二叉树
题目描述:从上到下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打印。
function Queue() { var items = []; this.enqueue = function(element) { items.push(element); } this.dequeue = function() { return items.shift(); } this.isEmpty = function() { return items.length === 0; } this.front = function() { return items[0]; } } function BinarySearchTree() { var Node = function(key) { this.key = key; this.left = null; this.right = null; } var root = null; this.insert = function(key) { var newNode = new Node(key); if(root === null) { root = newNode; }else{ insertNode(root, newNode); } } var insertNode = function(node, newNode) { if(newNode.key < node.key) { if(node.left === null) { node.left = newNode; } else { insertNode(node.left, newNode); } } else{ if(node.right === null) { node.right = newNode; } else { insertNode(node.right, newNode); } } } this.root = function() { return root; } } function PrintFromTopBottom(tree) { var queue = new Queue(); if(!tree) { return false; } queue.enqueue(tree.root()); while(!queue.isEmpty()) { var node = queue.front(); queue.dequeue(); console.log(node.key); if(node.left !== null) { queue.enqueue(node.left); } if(node.right !== null) { queue.enqueue(node.right); } } } var tree = new BinarySearchTree(); tree.insert(8); tree.insert(6); tree.insert(10); tree.insert(5); tree.insert(7); tree.insert(9); tree.insert(11); PrintFromTopBottom(tree);
阅读全文
0 0
- 面试题 23: 从上到下打印二叉树
- 面试题23:从上到下打印二叉树
- 《剑指Offer》面试题23:从上到下打印二叉树
- 剑指offer面试题23:从上到下打印二叉树
- 剑指Offer系列-面试题23:从上到下打印二叉树
- 剑指offer 面试题23 从上到下打印二叉树
- 【剑指offer】面试题32:从上到下打印二叉树
- [剑指offer]python从上到下打印二叉树【面试题9.15】
- 剑指Offer_面试题23_从上到下打印二叉树(层序遍历)
- 面试题23:从上到下层次遍历二叉树
- 【剑指offer】面试题32(2):分行从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 从上到下打印二叉树
- 10069---注意java代码的内存泄漏
- 将EL函数打包成jar包发布
- Java常用集合的一些笔记
- android deeplink能力支持
- 热情与词根 七月英语
- 面试题23:从上到下打印二叉树
- Java访问权限
- 蓝桥杯-栈的应用-表达式的计算
- 【安卓基础】03 实现简单聊天界面
- C语言——实例027 递归,字符相反顺序输出
- iOS蓝牙连接流程介绍-1
- Java之IO流
- redis
- nvm安装node方法