1
我有這個問題,我很困惑,一直在工作一段時間,我似乎無法找到任何幫助。Bubblesort算法問題
input a: array [1 .. n] of integer; n : integer;
temp i, j : integer;
j <-- n;
while j ≥ 1
do I <-- 1;
while i ˂ j
do
if a[i] ˃ a[j] then swap a[i], a[j];
i <-- i + 1;
od;
j < j – 1;
od
將這個算法終止?
我有我的答案,因爲沒有becayse [i]和[j]永遠不會交換。
作爲排序問題大小的函數,該算法在O-notation中的最壞情況時間複雜度是多少?
該算法的前提是真值TRUE。該算法的期望後置條件是:
for i ˂ j, a[i] ˂ a[j], for i = 1, 2, . . . , n-1, j = 2, . . . , n
找到兩個循環不變,而您認爲如果當算法終止將導致所需的後置條件的內環和外環。
任何幫助,將不勝感激!我想了解這一點!