ΠΡΟΓΡΑΜΜΑ ταξινόμηση
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: a[10], i
ΑΡΧΗ
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
ΔΙΑΒΑΣΕ a
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ quicksort(a, 1, 10)
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
ΓΡΑΨΕ a
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ quicksort(a, m, n)
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: m, n, a[10], k, temp, key, i, j
ΑΡΧΗ
ΑΝ (m < n) ΤΟΤΕ
k <- (m + n) DIV 2
temp <- a[m]
a[m] <- a[k]
a[k] <- temp
key <- a[m]
i <- m + 1
j <- n
ΟΣΟ i <= j ΕΠΑΝΑΛΑΒΕ
ΟΣΟ ((i <= n) ΚΑΙ (a <= key)) ΕΠΑΝΑΛΑΒΕ
i <- i + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΟΣΟ ((j >= m) ΚΑΙ (a[j] > key)) ΕΠΑΝΑΛΑΒΕ
j <- j - 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ i < j ΤΟΤΕ
temp <- a
a <- a[j]
a[j] <- temp
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
temp <- a[m]
a[m] <- a[j]
a[j] <- temp
ΚΑΛΕΣΕ quicksort(a, m, j - 1)
ΚΑΛΕΣΕ quicksort(a, j + 1, n)
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ