相关疑难解决方法(0)

递归执行广度优先搜索

假设您希望以递归方式实现广度优先搜索二叉树.你会怎么做?

是否可以仅使用调用堆栈作为辅助存储?

algorithm breadth-first-search

139
推荐指数
7
解决办法
12万
查看次数

javascript中广度优先遍历树

我正在努力学习数据结构并实现以下代码,以便在常规树上进行深度优先遍历/应用回调:

Tree.prototype.traverse = function (callback) {
  callback(this.value);

  if (!this.children) {
    return;
  }
  for (var i = 0; i < this.children.length; i++) {
    var child = this.children[i];
    child.traverse(callback);
  }
};
Run Code Online (Sandbox Code Playgroud)

我怎么能改变这一点,而不是先扩大它?这就是Tree Class的样子:

var Tree = function (value) {
  var newTree = {};

  newTree.value = value;
  newTree.children = [];
  extend(newTree, treeMethods);

  return newTree;
};
Run Code Online (Sandbox Code Playgroud)

javascript tree data-structures

20
推荐指数
1
解决办法
2万
查看次数