有没有办法将 Knuth shuffle 应用于 Stack 数据结构?

2024-01-09

对于编程课,我正在为第一个家庭作业创建一个二十一点程序。教授给了我们一个示例 Card 类,其中包括将它们添加到牌组中的方法。对于她的牌组,她使用 ArrayList,您可以使用 Collections.shuffle() 方法轻松地进行 Knuth Shuffle。

虽然该方法不适用于堆栈(显然),但我认为堆栈结构最适合此程序,因为您可以将卡片弹出或推入牌组或从牌组中推出。


Both java.util.ArrayList<E> http://java.sun.com/javase/6/docs/api/java/util/ArrayList.html and java.util.stack<E> http://java.sun.com/javase/6/docs/api/java/util/Stack.html实施java.util.List<E> http://java.sun.com/javase/6/docs/api/java/util/List.html接口,以及Collections.shuffle() http://java.sun.com/javase/6/docs/api/java/util/Collections.html#shuffle(java.util.List)需要一个java.util.List<?>作为参数。您应该能够通过Stack into Collections.shuffle(),除非您使用不实现的不同堆栈实现java.util.list<E>。如果是的话,我建议您切换到不同的堆栈实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法将 Knuth shuffle 应用于 Stack 数据结构? 的相关文章

随机推荐

  • ASP.NET 和会话 - 新浏览器实例与新浏览器窗口

    我希望有人能为我澄清这种行为 并解释 ASP NET 如何决定何时处理新会话等内容 A 在 Internet Explorer 中 我加载了相关的 ASP NET 站点 它开始一个新的会话 B 如果我进入菜单 文件 新窗口 它会保留在同一个
  • 如何让 Firefox 打印背景颜色样式?

    我有一些简单的CSS someElement background color black color white 它在浏览器中看起来不错 但是当我在 Firefox 中打印它时 它显示为白色背景上的黑色文本 我想这是某种节省墨水的功能 但
  • 将对象作为innerHTML添加到javascript/jquery中动态创建的div中很困难

    我的项目中有以下代码 HTML
  • 如何编写某些 CSS 形状的代码?

    我正在尝试用 CSS 制作下面的形状 有什么想法如何做到这一点 或者知道可以提供帮助的教程网站 我说的是黄色的标签之类的形状 其次 有谁知道如何用css制作一个形状 即正方形 矩形 底部有两个圆角 顶部有直角 Thanks James 来回
  • RabbitMQ 消费者作为 Windows 服务

    我有一个在 net中实现 发布 订阅模式 的rabbitmq消费者应用程序 它作为控制台应用程序完美运行 但是当我将其部署为Windows服务时 它似乎没有将数据保存到mongodb中 protected override void OnS
  • 当 iframe 中的表单具有焦点时,Chrome 在 Tab 键上滚动

    我有一个 iFrame 它托管一个包含表单的外部站点 如果我按某些表单文本框上的选项卡键 整个浏览器选项卡将向下滚动页面 奇怪的是 这并没有在所有表单字段上执行 这似乎只发生在 Chrome 中 我已经在 Firefox 和 IE11 中尝
  • 计算递推关系 T(n)=T(n-1)+logn

    我们要通过重复替换来解决递推关系 T n T n 1 logn 我开始替换并得到以下结果 T n T n 2 log n log n 1 根据对数乘积法则 log mn logm logn T n T n 2 log n n 1 继续这个
  • Refname“master”不明确

    我已经查看了所有其他不明确的引用名称问题 但似乎没有一个有帮助 为什么我会收到此警告 git checkout master warning refname master is ambiguous git show ref master e
  • Spring Data JpaRepository方法中的Pageable和@Param问题

    我有一个以下存储库 public interface MilestoneRepository extends JpaRepository
  • 关于 .then 和 .catch 的问题

    是否可以触发 then AND catch 这是我的脚本 passport use new BasicStrategy username password callback gt User findOne where username us
  • Angular 2 import 语句通配符语法

    我在一个文件中定义了几个类 如下所示 我的类 ts export class Class1 export class Class2 export class Class3 现在我想像这样使用通配符导入它们 import from my cl
  • Laravel 5:检查事件日期范围是否尚未使用

    我正在为几天的事件创建日历 并且事件不能重叠 但是事件可以在另一个事件开始 结束时开始 结束 在 Laravel 中 在我的事件模型表中 我存储事件的开始和结束日期 在存储新事件数据库之前如何检查它是否有效 不与现有事件重叠 不包括保证金
  • IndexedDB 插入时速度慢

    我在第三代 iPad 上安装了 iOS 8 并在 Safari 中尝试了 IndexedDB 我的示例代码只是将 1000 个对象添加到对象存储中 它可以工作 但与具有类似或较弱硬件的其他设备相比 它非常慢 See this snippet
  • 在类层次结构中查找公共超类和路径长度

    我有两个来自 DBpedia 的课程 A 和 B 如何计算每个类到公共超类 C 的距离 边数 以及如何找到这个公共超类 您可以这样做 但首先应注意以下几点 两个类可能有很多共同的超类 不一定只有一个 这意味着可能不存在唯一的最专业的公共超类
  • QueryException:对象比较只能使用 equal() 或 notEqual() 运算符

    我在查询 IN 时遇到下一个错误 错误是这个 Caused by Exception EclipseLink 6075 Eclipse Persistence Services 2 3 0 v20110604 r9504 org eclip
  • 使用 kIOHIDOptionsTypeSeizeDevice 时,击键不会被阻止,并且仍会传递到操作系统

    我的目标是使用 IOHID 阻止击键到达操作系统 由于其他原因无法使用 CGEvent 根据文档kIOHIDOptionsTypeSeizeDevice 用于开启与设备的独占通信 这将阻止系统和其他客户端接收来自设备的事件 import T
  • 插入Picture类的属性

    我已阅读此处有关此主题的所有问题 但没有一个为我提供可行的解决方案 因此我要问这个问题 我在 Windows 7 中运行 Excel 2013 的合法副本 我在插入图片的位置记录了一个宏 并在打开的文件对话框中粘贴了以下 URL http
  • 如何使用 ng2-chart 创建数据标签?

    好吧 我再次遇到了 Angular 和 javascript 问题 对于我提出的每个问题都感觉自己很愚蠢 但让我尝试解释一下我最初的步骤以及它如何导致这个问题 因此 在我最新的项目中 我想添加一些精美的图表 让事情变得更清晰 更易于用户使用
  • 使用 Storyboard 自定义 UITableViewCell

    我正在尝试使用故事板制作自定义单元 我已经用基本单元测试了我的程序并且它有效 现在我创建了一个名为 NewsCell 的新类 它包含自定义单元格中的不同标签 我还将该单元设为 NewsCell 的子类 小区标识符是 NewsCell 这是
  • 有没有办法将 Knuth shuffle 应用于 Stack 数据结构?

    对于编程课 我正在为第一个家庭作业创建一个二十一点程序 教授给了我们一个示例 Card 类 其中包括将它们添加到牌组中的方法 对于她的牌组 她使用 ArrayList 您可以使用 Collections shuffle 方法轻松地进行 Kn