• 循环不变式


    一、循环不变式
      1、基本原理

      初始化:在循环的第一轮迭代前是正确的;

      保持:如果在循环的某一次迭代开始之前是正确的,那么在下一次迭代开始之前,也是正确的;

      终止:当循环结束,不变式给了我们一个有用的性质。

        当头两个性质成立时,就能保证循环不变式在循环的每一轮迭代开始之前,都是正确的,有关循环不变式的第三项可能是最重要的,因为我们是用不变式来证明算法的正确性。

      就是个思想,说明正确算法的循环过程中总是存在一个维持不变的特性,这个特性一直保持到循环结束乃至算法结束,这样就可以保证算法的正确了。
    比方说插入排序,算法每次循环后,前n个数一定是排好序的(n为已经循环的次数)。由于这个特性一直成立,到算法结束时,所有N个数一定是排好序的。
    关于这个思想,很多算法的正确性都是由循环不变性保证的
     
  • 相关阅读:
    【LeetCode】Rotate List
    【LeetCode】Longest Valid Parentheses
    【LeetCode】Longest Substring Without Repeating Characters
    【LeetCode】Multiply Strings
    【LeetCode】Triangle
    hdfs 查看报告--命令(hdfs dfsadmin -report)
    hive
    java ---面向对象
    java--数组
    java--函数
  • 原文地址:https://www.cnblogs.com/weiliuyby/p/8324462.html
Copyright © 2020-2023  润新知