问题标签 [towers-of-hanoi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5332 浏览

java - Java中的河内塔使用堆栈

我正在编写一个程序来用 Java 玩河内塔游戏。我们将使用堆栈来表示塔。我有一个由 3 个堆栈组成的数组,其中两个初始化为空,最后一个填充用户定义的磁盘数量。我有一个 Hanoi 类文件,因此我们可以使用 Hanoi 构造函数,它接受一个整数并创建一个该大小的磁盘。我无法弄清楚在我的初始化方法中将磁盘推入堆栈的代码(它们的大小是它们位置的镜像,因此磁盘 1 的大小为 1 等)任何帮助都将不胜感激。

这是我的 Hanoi 类磁盘构造函数:

还有我的初始化方法

这应该将它们全部初始化为空。那么我应该根据用户输入为每个磁盘创建一个新的 Hanoi 对象并以相反的顺序将它们推送到堆栈吗?

0 投票
3 回答
1564 浏览

prolog - 在河内的序言塔上实施计数器

我有一个使用 Prolog 的程序在早上到期。

我正在实施河内塔。

我需要帮助的是每次打印Move disc number # from _ to _。我需要增加一个计数器,说Move X: "String"String 是要移动的前一个语句。

在程序结束时,我需要打印完成拼图所采取的移动总数。我目前有我的程序设置递归自下而上。

0 投票
5 回答
3716 浏览

algorithm - “河内塔”当所有磁盘不在A中时的解决方案

如您所知,有一些解决河内塔的方法,但它们要求所有磁盘一开始都在一个塔中。

现在我想知道有没有办法解决它,磁盘已经在开始时随机分布在塔之间。

0 投票
3 回答
1764 浏览

c++ - 计算河内塔中的函数调用?

所以我想计算调用函数 moveSingleDisk() 的次数,但我似乎无法弄清楚......使用这段代码:

我得到以下输出:

我试图追踪问题,但递归使得追踪这类事情变得非常困难(至少对我而言)。

任何帮助或解释将不胜感激!谢谢 :)

0 投票
2 回答
639 浏览

openmp - 如何使该算法与 OpenMP 并行?

在 C++ 中使用 openMP 时,我再次陷入困境。这次我试图实现一个并行的 Hanoi Tower 。

如何使用 OpenMp 的指令使该算法并行化?

0 投票
1 回答
985 浏览

java - 河内塔柜台

我已经为河内塔游戏编写了代码。我不知道如何为这个程序实现一个计数器,它运行了多少次。任何帮助都感激不尽。

0 投票
2 回答
4653 浏览

java - 河内爪哇塔

这是我正在做的作业。我创建了 2 个类来玩河内塔。第一个基本上是运行实际游戏类的跑步者。

我需要帮助的是让TowersOfHanoi班级从我的TowersRunner班级开始。TowersOfHanoi我还需要实现一个计数器,显示游戏在我的课堂上完成之前运行了多少次。基本上我需要的线是System.out.println("It took" + counter + "turns to finish.");

我不知道如何正确实现计数器。此外,不能让 runner 类运行TowersOfHanoi. 课程本身运行良好,TowersOfHanoi但家庭作业的要求是我们至少需要 2 节课。

帮助将不胜感激!!!请我是Java和一般编程的新手,请不要对我太先进。:D

0 投票
5 回答
6788 浏览

java - 河内塔比 O(2^n) 更好?

是否有运行时间小于 O(2 n ) 的河内塔的解决方案,其中n是要移动的磁盘数量?我的解决方案需要 O(2 n ) 时间。

此外,以下解决方案是递归的。我们可以使用带有记忆概念的动态编程在更短的时间内解决这个问题吗?

MyStackStack是Java中类的扩展版本,它添加了name字段和访问器。

另外,同一个问题是否有任何变化?

0 投票
1 回答
8056 浏览

prolog - 河内塔(河内塔)

我正在尝试解决河内塔问题,到目前为止我已经尝试过:

但是这段代码不起作用,我需要得到的结果是这样的:

有人可以帮我修复我的代码并得到这样的结果吗?这对我来说很重要,我真的需要帮助。这就是我所做的,但有一些问题:

0 投票
1 回答
302 浏览

prolog - 河内塔 - 另一个输出

对于河内塔,输出应如下所示:

我知道该怎么做:

但下一个问题是:“重写程序以在每次移动后提供塔的插图”。它的输出应该是这样的:

如何才能做到这一点?