algorithm - 迭代 O(2^n) 算法的示例
问题描述
正如标题所说,什么是迭代 O(2^n) 算法的示例?通常什么时候发生?
解决方案
河内塔就是一个很好的例子。
河内塔由三个杆或钉子组成,n 个圆盘一个接一个。
谜题的目的是按照这 3 条规则将整个堆栈移动到另一个杆。
1.一次只能移动一个磁盘。2.每次移动都包括从其中一个堆栈中取出上面的圆盘,并将其放在另一个堆栈的顶部或空棒上。3.较大的磁盘不能放在较小的磁盘上。
解决汉诺塔难题所需的最小移动次数为 2^n - 1,其中 n 是磁盘的数量。
https://en.wikipedia.org/wiki/Tower_of_Hanoi#Iterative_solution
推荐阅读
- jquery - 数据表 - 当数据表尝试发出 AJAX 请求时获取 net::ERR_CONNECTION_CLOSED
- c# - 服务总线在 ReceiveAndDelete 模式下成功完成后重新启动消息处理
- mysql - Rails 控制台打印消息和查询需要太多时间来加载
- office365 - PHP Mailer 和 Office 365 配置
- r - R:根据文件名合并数据帧
- flutter - 监听传入的通知 Flutter
- java - Java 排序集合与 DB 提取集合
- java - 在 oracle 中合并 BLOB 数据
- r - 根据R中的字符串匹配在新列中添加标签
- php - 仅当在 WooCommerce 中使用特定优惠券时才适用运费