【发布时间】:2012-06-16 03:30:42
【问题描述】:
我正在编写一个愚蠢的小脚本来帮助我为我收藏的电影分配评级。我有一系列需要排序的电影标题。我想应用一种类似合并排序的递归算法来按评级对电影进行排序。在每次比较时,我都希望更新文档上的表单。用户将选择 A 或 B - 两个标题中较好的一个 - 然后单击“继续”按钮。它将使用此信息进行排序。在该过程结束时,用户将回答 A 或 B 到生成电影有序列表所需的最小二进制比较问题数。
我的问题:如何让递归算法在每一步都等待表单的输入?使用confirm() 之类的东西将允许代码在确定输入时阻塞,但显然页面元素不能这样做。我应该涉及一些讨厌的超时功能吗?保持某种全球封闭?理想情况下,我希望将“继续”按钮链接到 continueRecursion() 回调,但我不知道该怎么做。
关于如何攻击这个有什么建议吗?
【问题讨论】:
-
用于表示递归的数据结构是
Stack。 (这是有道理的,因为程序栈是一个栈。)所以创建一个栈数据结构,然后在栈的每一层存储代表每个函数调用的模拟局部变量。然后将该堆栈放入一个全局变量中 - 希望你能看到这是怎么回事......
标签: javascript recursion