无限循环:确定并打破无限循环

2024-06-25

你如何判断一个循环是无限循环并且会跳出它。

有没有人有算法或者可以帮助我解决这个问题。

Thanks


没有通用的算法可以确定程序是否处于无限循环中图灵完备 http://en.wikipedia.org/wiki/Turing_completeness语言,这基本上是停机问题 http://en.wikipedia.org/wiki/Halting_problem.

证明它的想法很简单:

  1. 假设你有这样的算法A.
  2. 构建一个程序B调用A在其自身上[在B].
  3. if A回答“程序将停止”-执行无限循环
  4. else [A答案B不停止] - 立即停止

现在,假设您调用A on B- 答案肯定是错误的,因此A不存在。

Note:以上不是正式的证明,只是一个草图。

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

无限循环:确定并打破无限循环 的相关文章

  • 什么是日历队列?

    我正在致力于构建一个离散事件模拟器 维基百科提到有几种通用优先级队列非常适合在 DES 中使用 具体来说 它提到日历队列是一个很好的结构 我找到了一份 pdf 1988 年的 其中提到了日历队列 但在大多数情况下我找不到关于它们的任何其他内
  • 正确地将 for 循环转换为并行循环

    我这里有这个数据集 例如 学生在几年内多次参加考试 要么通过 要么失败 我有兴趣研究上一次测试对下一次测试的影响 id sample int 10000 100000 replace TRUE res c 1 0 results sampl
  • 运动结构,根据 2D 图像点对应关系重建 3D 点云

    Use case 物体绕其中心以不同的速度旋转 固定摄像机正在观察物体 给定 2D 图像点对应关系重建 3D 点云 当物体旋转时 相机可以看到它的不同部分 从而检测到不同的点和对应关系 Scene A N 张图片b N 1 图像对C N 1
  • 计算排列中“反转”的数量

    设 A 为一个大小的数组N 我们称之为几个索引 i j 一个 逆 如果i lt j and A i gt A j 我需要找到一种接收大小数组的算法N 具有唯一的数字 并返回时间的倒数数O n log n 您可以使用归并排序 http en
  • 无限循环:确定并打破无限循环

    你如何判断一个循环是无限循环并且会跳出它 有没有人有算法或者可以帮助我解决这个问题 Thanks 没有通用的算法可以确定程序是否处于无限循环中图灵完备 http en wikipedia org wiki Turing completene
  • 递归分层父子

    我有一个来自数据库的项目集合 该数据库具有parentid值或空 这是我的班级设计 public class Item public int id get set public string Name get set public int
  • 转置矩阵存储在一维数组中,无需使用额外的内存[重复]

    这个问题在这里已经有答案了 可能的重复 矩阵的就地转置 https stackoverflow com questions 9227747 in place transposition of a matrix 最近参加了技术笔试 通过以下问
  • 将数字 1 排列在二维矩阵中

    给定二维矩阵的行数和列数 初始矩阵所有元素均为0 给定每行中应该出现的 1 的数量 给定每列中应该出现的 1 的数量 确定是否可以形成这样的矩阵 例子 Input r 3 c 2 no of rows and columns 2 1 0 n
  • 如何迭代或映射元组?

    我最初的问题是将不同类型的元组转换为字符串 在 Python 中 这将类似于 gt gt a 1 3 1 c gt gt b map lambda x str x a 1 3 1 c gt gt join b 1 3 1 c 然而 Rust
  • Welzl 算法的迭代版本

    我正在使用 Welzl 算法来查找点云的最小外接圆 2d 或最小外接球体 3d 不幸的是 该算法具有非常高的递归深度 即输入点数 这个算法有迭代版本吗 我找不到任何并且不知道如何将递归更改为循环 我发现了一些迭代的最小包围圆 球算法 但它们
  • 将 diff 转换为带有删除线的 Markdown?

    我想转换输出diff 在 Markdown 文件上 降价与
  • 如何确定 n 高数字金字塔中的最大路线成本

    我有一个像这样的数字金字塔 7 4 8 1 8 9 2 4 6 7 4 6 7 4 9 4 9 7 3 8 8 routes 32 每个数字都按其系列中的强大程度进行索引 0 9 gt 1 1 8 gt 5 2 8 gt 4 3 7 gt
  • 如何决定权重?

    对于我的工作 我需要某种具有以下输入和输出的算法 输入 一组日期 过去的日期 输出 一组权重 每个给定日期一个权重 所有权重的总和 1 基本思想是 距离今天日期最近的日期应该获得最高的权重 第二个最接近的日期将获得第二高的权重 依此类推 有
  • 拉伸数组

    我有一个形成曲线的样本向量 假设其中有 1000 个点 如果我想将其拉伸到填充 1500 个点 给出不错结果的最简单算法是什么 我正在寻找一些只有几行 C C 的东西 我总是想增加向量的大小 并且新向量可以是当前向量大小的 1 1 倍到 5
  • 证明链表是循环的最快方法?在Python中[重复]

    这个问题在这里已经有答案了 有人可以让我知道证明链表包含循环的最佳方法吗 我正在使用一种带有两个指针的算法 一个指针缓慢移动一步 一个指针移动两步较快 class Node object def init self value next N
  • 迭代最近点实现

    我目前正在使用以下伪代码在 C 中实现 ICP 算法 从 获取ICP 简报 http www math tau ac il dcor Graphics adv slides ICP ppt function ICP Scene Model
  • 缩小位图字体的算法

    这是后续这个问题 https stackoverflow com questions 4179414 low level c display text pixel by pixel 我正在开发一个低级 C 应用程序 我必须在其中绘制文本 我
  • 基于百分比的路由算法

    四处浏览基于百分比的路由 偶然发现这个线程 https stackoverflow com a 52044571 3154233 根据建议的算法如下 对于给定模型如下 public class Host private String nam
  • 将矩形均匀分布在另一个矩形内所需的算法

    我正在寻找一种算法 可以帮助在较大的矩形内分配不同大小的矩形 同时最大限度地减少重叠 我研究过装箱算法 但它们似乎最小化了矩形之间的空间量 在我的例子中 所有被包装的物品都将是正方形 我想我想最大化所有正方形和外部矩形边界之间的距离 这是我
  • jQuery:通过子项进行动画、连续循环

    接近但还没有完全实现 我想让第一个子 div 显示几秒钟 向下滑动 通过定位 并淡出视图 然后下一个子 div 向上滑动并淡入视图 连续重复 在显示最后一个子项后循环返回 看起来我已经让循环正常工作了 尽管计数似乎将子 div 堆叠在一起

随机推荐

  • Raspberry pi 3 B+ 中的串行通信

    我想在 Raspberry pi 3 B 和 GSM GPRS A6 之间进行通信 我尝试过 但无法从 Raspberry pi 向 GPRS 模块发送数据 现在 我知道在较新的操作系统 在我的例子中是 Raspbian Stretch 中
  • Haskell 中的随机枢轴快速排序

    是否有可能在 Haskell 中实现快速排序 使用 RANDOM PIVOT 但仍然有一个简单的Ord a gt a gt a 签名 我开始了解 Monad 目前 我将 monad 解释为某种 命令模式 这对于 IO 非常有用 所以 我知道
  • Roslyn:将 C# 转换为 VB

    我有这样的情况 我需要将 C 项目转换为 VB NET 项目 我想自动化这个 所以我不能使用在线工具或类似的东西 有 粘贴为 C VB 示例 Visual Studio 扩展 https github com akimboyko MetaP
  • 如何将 Angular 7 应用程序包含在现有的 html 文件和网站中?

    我一方面有一个现有网站 另一方面有一个 Angular 7 应用程序组件 我想编辑现有的someusecase html并重用我的 Angular 7 应用程序 例如
  • VS 2010 和 MBUnit 如何只运行一项测试

    我安装了 Gallio MbUnit 并使用 VS 2010 RC 我希望能够运行单个单元测试或 TestFixture 内的所有单元测试 而不是每次调试时整个项目中的所有测试 在 VS 2010 中如何做到这一点 安装testdriven
  • 如何最大限度地减少 Go 中的垃圾收集?

    有时您可能想避免 最小化垃圾收集器 所以我想确定如何做到这一点 我认为下一个是正确的 在函数的开头声明变量 使用数组代替切片 还有吗 为了最大限度地减少 Go 中的垃圾收集 您必须最大限度地减少堆分配 为了最大限度地减少堆分配 您必须了解分
  • SignalR - 如何向除呼叫者之外的所有人发送消息

    我有一个 Aspnet core 3 1 MVC 应用程序 我在其中配置了 SignalR 集线器 我有一个控制器 我可以在其中进行依赖注入 oIHubContext private readonly IHubContext
  • 如何在拖动另一个元素时获取鼠标光标下的元素?

    我用谷歌搜索并找到了几个答案 但它们都是关于单击或鼠标移动事件的 这些事件不适合我的问题 基本上 我允许用户从列表中拖动项目并将其放在另一个列表中的文件夹上 并且每当项目拖动到元素上时 我想突出显示元素 在文件夹列表中 监听文件夹列表上的
  • 无法找到类型 [Microsoft.TeamFoundation.Build.Workflow.WorkflowHelpers]

    我正在尝试对来自指定进程参数的 Powershell 的构建进行排队 我收到以下错误 知道我做错了什么吗 无法找到类型 Microsoft TeamFoundation Build Workflow WorkflowHelpers 确保包含
  • CUDA双指针内存复制[重复]

    这个问题在这里已经有答案了 我这样写了我的示例代码 int d ptr cudaMalloc void d ptr sizeof int N int tmp ptr N for int i 0 i
  • 如何从 Uri xamarin android 获取实际路径

    我想从 Uri 获取实际路径 当我使用意图选择文件时 它将返回 URI 但下面的代码行无法将 URI 转换为字符串路径 打开文件选择器 public static void PickFile Activity context Intent
  • 在 Powershell 中获取小文件的“磁盘大小”

    我正在使用一个遗留系统 该系统有大量来自外部系统的导入 其中大多数通过下载文件 根据上下文大小不同 处理它 然后将文件存储在 SAN 卷上的其他位置 格式为 NTFS 和安装在 WS2008R2 盒子上 我们遇到的问题是 由于簇的大小 大量
  • 取消选择单选选项

    我正在使用引导单选按钮 http getbootstrap com javascript buttons并希望允许取消选择无线电组 这可以使用额外的按钮来完成 Fiddle http jsfiddle net norlihazmeyGhaz
  • 使用 immutable.js 相对于 Object.assign 或扩展运算符的优势

    到目前为止 我看到的大多数 入门样板 和一些关于 React Redux 的帖子都鼓励使用不可变 js https facebook github io immutable js 来解决可变性 我个人依靠Object assign或传播运算
  • 使用 viewpager 的片段事务返回空白视图

    我正在使用 tablayout 和视图寻呼机来显示片段 我当前的设置是 我获得 类别 的列表视图 用户单击一个类别 然后返回一个新片段 其中包含该类别中的可用折扣列表 我的设置创建新的 DiscountList 片段 但在原始片段执行事务时
  • 将变量从 SASS 导出到普通 CSS?

    考虑一下我有一长串不同的 SASS 变量 scss像这样的文件 app color white ffffff app color black 000000 将这些变量导出为普通 CSS 变量的最有效方法是什么 root app color
  • IL 约束调用

    对于这段代码 class Program static void Main Console WriteLine new MyStruct ToString struct MyStruct C 编译器生成constrained callvir
  • 如何合并不同 MySQL 列中的日期和时间以与完整的 DateTime 进行比较?

    Column d是日期 列t是时间 列v例如 是 INT 假设我需要 2012 年 2 月 1 日 15 00 及之后记录的所有值 如果我写 SELECT FROM mytable WHERE d gt 2012 02 01 AND t g
  • Java 有没有办法记录*每个*线程中断?

    我想每次都以某种方式记录Thread interrupt 被调用 记录哪个线程发出调用 及其当前堆栈 以及识别有关哪个线程被中断的信息 有没有办法做到这一点 在搜索信息时 我看到有人提到实施安全管理器的可能性 这是可以在运行时完成的事情 例
  • 无限循环:确定并打破无限循环

    你如何判断一个循环是无限循环并且会跳出它 有没有人有算法或者可以帮助我解决这个问题 Thanks 没有通用的算法可以确定程序是否处于无限循环中图灵完备 http en wikipedia org wiki Turing completene