⚠️ 归纳假设可以假设什么

⚠️ 归纳假设可以假设什么

证归纳步的时候,你可以放心假设【0】。

阅读更多 →
递归的基线对应归纳的哪一步

递归的基线对应归纳的哪一步

一个递归函数里的基线条件,对应归纳法的【0】。

阅读更多 →
数学归纳法的两步是什么

数学归纳法的两步是什么

用归纳法证明一件事对所有 n 成立,要走的两步是【0】。

阅读更多 →
交付:初始化 / 保持 / 终止

交付:初始化 / 保持 / 终止

数组 [17, 24, 15, 13, 23]。把不变式证明的三步各写成一次检查,三个结论一起输出。

阅读更多 →
🔴 一组上一直成立,另一组第一轮就破

🔴 一组上一直成立,另一组第一轮就破

还是 best = 0 那一版。看看不变式在 [17, 24, 15, 13, 23] 和 [-17, -24, -15, -13, -23] 上分别第几轮开始不成立(一直成立就给 0)。

阅读更多 →
自己写:把不变式写成一句 assert

自己写:把不变式写成一句 assert

数组 [17, 24, 15, 13, 23]。在循环体末尾加一句断言,把"best 是前 i+1 个里最大的"这句话真正验起来,并数一数一共验过几轮。

阅读更多 →
⚠️ 全负数组上,它给出什么

⚠️ 全负数组上,它给出什么

一个常见的写法是 best = 0。拿全是负数的数组 [-17, -24, -15, -13, -23] 跑一遍: NEG = [-17, -24, -15, -13, -23] def find_

阅读更多 →
每一轮的 best 是什么

每一轮的 best 是什么

数组 [17, 24, 15, 13, 23],把每一轮结束时的 best 都打出来: A = [17, 24, 15, 13, 23] NEG = [-17, -24, -15, -13, -23]

阅读更多 →
⚠️ 不变式和普通断言差在哪

⚠️ 不变式和普通断言差在哪

在循环里随手加一句 assert,和写一个不变式的区别是【0】。

阅读更多 →
用不变式证明要验哪三件事

用不变式证明要验哪三件事

拿不变式证明一个循环是对的,要验的三件事是【0】。

阅读更多 →