题目:
冒泡排序算法的正确性
解答:
a)还需要证明什么?
不等式证明了,终止条件也证明了,缺啥? 证明子数组是原数组的一部分,也就是说, A′[i] i=1∼n 可以构成原数组
b)对第2~4行的for循环给出一个准确的循环不变式,并证明该循环不变式是成立的
b问题就是证明每一趟的排序, 这种证明真是。。。要亲命了,证明:
循环不变式:每次迭代中, A[j]=min{ A[k]:j≤k≤n} ,并且子数组是原数组的一部分
初始化: 开始时, j=n , A[j..n]
冒泡排序算法的正确性
a)还需要证明什么?
不等式证明了,终止条件也证明了,缺啥? 证明子数组是原数组的一部分,也就是说, A′[i] i=1∼n 可以构成原数组
b)对第2~4行的for循环给出一个准确的循环不变式,并证明该循环不变式是成立的
b问题就是证明每一趟的排序, 这种证明真是。。。要亲命了,证明:
循环不变式:每次迭代中, A[j]=min{ A[k]:j≤k≤n} ,并且子数组是原数组的一部分
初始化: 开始时, j=n , A[j..n]