ፍልልይ ኣብ መንጎ ክለሳታት «ኮምፒዩተር ሳይንስ»

Content deleted Content added
No edit summary
No edit summary
መስመር 32፦
function divide(left, right) {
i := left
// ካብቲ ቀንዲ ባእታ ብጸጋም ዘሎ ‚j’ ይጀምር፥
j := right - 1
pivot := files[right]
መስመር 38፦
loop
 
// ካብቲ ቀንዲ ባእታ ዝዓበየ ባእታ ኣብ ጸጋም ዘሎ ይደሊ፥
 
loop while files[i] ≤ pivot and i < right
መስመር 44፦
end
 
// ካብቲ ቀንዲ ባእታ ዝነኣሰ ባእታ ኣብ የማን ዘሎ ይደሊ፥
 
loop while files[j] ≥ pivot and j > left
መስመር 52፦
if i ≤ j then swap files[i] with files[j]
 
while i ≤ j // እቲ ‘i’ kabtiካብቲ ‘j’ ከይሓለፈ ከሎ
while i ≤ j
 
// ነቲ ቀንዲ ባእታ (files[right]) ምስ ሓድሽ ውሱን ኣቀማምጣ (files[i]) ይለዋወጥ፥
if files[i] > pivot
Line 60 ⟶ 61:
end
// ነቲ ቦታ ናይቲ ቀንዲ ባእታ ይመልስ፥
return i
Line 75 ⟶ 76:
divider := divide (left, right)
if right-divider > divider-left
quicksort(left, divider - 1) // እቲ ዝንእስ ክፋል እንደገና …
quicksort(left :=, divider +- 1)
// … እቶም ዝዕብይ ከኣ ይሰርዕ
left := divider + 1
 
else
quicksort(divider + 1, right)