标签:
伪代码
1 数组A[1..n]:包含长度为n的要排序的序列。 2 A.length: A中元素数目 3 该算法在原址排序输入的数 4 我们希望排序的数也称为关键字(key) 5 INSORTION-SORT(A) 6 for 2 to A.length 7 key = A[j] 8 //insert A[j] into the sorted sequence A[1..j-1] 9 i = j - 1 10 while i > 0 and A[i] > key 11 A[i+1] = A[i]; 12 i --; 13 A[i++] = key
循环不变式主要帮助我们理解算法的正确性。关于循环不变式, 我们必须证明三条性质:
初始化:循环的第一次迭代之前, 它必为真
保持:如果某次迭代1之前它为真,那么下次迭代之前它仍为真。
终止:再循环终止时, 不变式为我们提供一个有用的性质, 该性质有助于证明算法是正确的。
标签:
原文地址:http://www.cnblogs.com/chengbao/p/5024977.html