这是想告诉我什么?

249

我正在阅读RG Dromey的《如何通过计算机解决问题》一书。我被困在试图解释循环终止的句子上。问题出在这里:

假设我们希望确定n元素数组严格按升序排列(即a[1] < a[2] < ... < a[n])。为此,我们可以使用以下说明:

a[n+1] := a[n];
i := 1;
while a[i] < a[i+1] do i := i+1

(现在,如果n元素数是多少,i在这种情况下代表什么?它代表值吗?)

如果n将值分配为5,并且数据集为2、3、5、11、14,则循环之前的第一个分配将导致以下数组配置:

(这是我感到困惑的地方。)

a[1]  a[2]  a[3]  a[4]  a[5]  a[6]
2     3     5     11    14    14

这两个14保证了测试a[i] < a[i+1]将在false时为假i = n,因此i = n如果不早于此,循环将正确终止

(这很令人困惑。)

狗仔队

i只是索引
i:= 1; 表示i等于1
i:= i + 1表示将i加1

n = 5

a [5] = 14
a [5 + 1] = a [6] = 14

14 <14为假-循环终止

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

这是我的连接字符串,请告诉我有什么问题

这是强制吗?为什么R告诉我这些是相同的数据类型?

有人可以告诉我这是什么类型的吗?

Python Shell告诉我这是无效的语法

斯威夫特告诉我_:是什么?

auto &&告诉我们什么?

CMake告诉我什么(Windows错误)?

我对 Python assert 语句的使用有不同的看法,我想请您告诉我为什么我错了

为什么Chrome告诉我有警告消息,却不告诉我它们是什么?

有人想告诉我为什么使用pygame Vector时我的pygame代码滞后吗?

为什么Powershell告诉我我需要。\

为什么MySQL Workbench告诉我我需要分号?

为什么我的IDE告诉我if语句是多余的?

谁能告诉我我的代码出了什么问题

谁能告诉我我的功能出了什么问题?

谁能告诉我为什么8> 7 <6 = true?

ffmpeg依赖错误告诉我什么,如何解决?

为什么做出反应告诉我意外的标记“”

SceneKit统计信息窗口告诉我们什么?

未初始化的常量ApplicationHelper告诉我什么?

谁能告诉我这段代码是什么意思?

这个Ecto Constraint Error试图告诉我什么?

告诉我这段代码GOLANG有什么问题

ANN的S型输出的导数告诉我什么?

为什么AS告诉我`(ob instanceof Button)`总是`false`?

为什么ReSharper告诉我“隐式捕获关闭”?

为什么AWS告诉我BucketAlreadyExists不存在?

为什么sudo告诉我密码错误?

谁能告诉我为什么不返回该值?