二分查找
二分查找
在二分查找的过程中,必须保持不变量,也就是循环不变量
循环不变量的定义:在循环过程中报错不变的性质
主要作用:
- 让算法设计的逻辑更加清晰
- 让代码更加简洁,有更强的逻辑性
- 证明算法的正确性
比如
在选择排序算法中,我们可以写出循环不变的性质:区间nums[0…i]里保存了数组力最小的i个元素,并且nums中的元素按升序排列。无论是在循环的初始化、循环的过程中、循环的结束,这个循环不变性质都是恒定不变的。我们可以根据这个不变性质去设计算法,去让程序更有逻辑性
对二分法进行代码实现的时候,我们可以定义其循环不变的性质:循环过程中其区间是左闭右开的。我们在写代码的时候,依据这个不变性质,就不会造成区间一会是左闭右开,一会是左闭右闭,造成代码错误
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment