更新:
我找到了一个更好的例子来说明我的问题:在MySQL中管理分层数据。我想用JavaScript来实现这个,因为我正在构建一个应用程序,它接收以分层结构形式呈现的评论,具体来说是reddit.com。如果你在Chrome浏览器上安装了Pretty JSON扩展程序,请转到reddit并点击一个线程的评论,然后将.url后面加上.json,就可以看到我正在解析的内容。
我已经成功获取了JSON数据,但只是通过评论进行解析并添加适当的HTML代码以显示其嵌套关系。
有什么解决方案吗?
旧问题:
我正在开发一个程序,遇到了需要在编写代码之前确定逻辑的部分。
我正在处理一种树形格式的数据,但每个父节点可能会有多个子节点,并且我能找到的唯一的树形数据要么带权值,要么最多每个节点只有两个子节点。所以我正在尝试找出评估此类树的每个节点的算法:
现在,当我试图写出我的算法如何工作时,我最终会写出嵌套的for/while循环,但是对于动态数据和高度未知且每个节点具有未知数量的子节点的树,我需要为每个高度级别编写一个循环,这并不可行。我知道在某个时候我学过如何遍历这样的树,但现在完全逃脱了我的记忆。有人知道如何使用循环来完成吗?
我找到了一个更好的例子来说明我的问题:在MySQL中管理分层数据。我想用JavaScript来实现这个,因为我正在构建一个应用程序,它接收以分层结构形式呈现的评论,具体来说是reddit.com。如果你在Chrome浏览器上安装了Pretty JSON扩展程序,请转到reddit并点击一个线程的评论,然后将.url后面加上.json,就可以看到我正在解析的内容。
我已经成功获取了JSON数据,但只是通过评论进行解析并添加适当的HTML代码以显示其嵌套关系。
有什么解决方案吗?
旧问题:
我正在开发一个程序,遇到了需要在编写代码之前确定逻辑的部分。
我正在处理一种树形格式的数据,但每个父节点可能会有多个子节点,并且我能找到的唯一的树形数据要么带权值,要么最多每个节点只有两个子节点。所以我正在尝试找出评估此类树的每个节点的算法:
startingParent[15] // [# of children]
child1[0]
child2[5]
child2ch1[4]
...
child2ch5[7]
child3[32]
...
child15[4]
现在,当我试图写出我的算法如何工作时,我最终会写出嵌套的for/while循环,但是对于动态数据和高度未知且每个节点具有未知数量的子节点的树,我需要为每个高度级别编写一个循环,这并不可行。我知道在某个时候我学过如何遍历这样的树,但现在完全逃脱了我的记忆。有人知道如何使用循环来完成吗?