Туўрыдан-туўры таңлаў усылы менен саралаў
Ойлайық, a1, a2, … , an элементлер избе-излиги берилген болсын.
Усы усыл төмендеги принциплерге тийкарланған:
1. Берилген элементлер ишинен ең киши гилтке ийе элемент таңланады.
2. Усы элемент баслағыш избе-изликтеги биринши элемент a1 менен орын алмасады.
3. Оннан кейин усы процесс қалған n-1 элемент, n-2 элемент ҳәм басқа, бир ең “үлкен” элемент қалғанға шекем даўам еттириледи.
Усынылап атырған усыл алгоритми төмендегише болады:
Паскаль тилндеги программасы:
Procedure StraightSelection
Var
i,j,k: index; x:item;
begin
for i:=1 to n-1 do
k:=I; x:=a[i];
for j:=i+1 to n do
if a[j]
end;
end;
a[k]:=a[i];
a[i]:=x
end;
end StraightSelection
Алгоритм эффективлиги:
Салыстырыўлар саны М = .
Алмастырыўлар саны Cmin = 3(n - 1), Cmax = 3(n - 1)
(n2 тәртип).
Усы усыл бойынша саралаў орынланса, ең жаман жағдайда салыстырыўлар ҳәм алмастырыўлар саны тәртиби n2 болады.
Do'stlaringiz bilan baham: |