ВУЗ:
Составители:
Рубрика:
35
begin
If St^.Info.Sum_ball < Ss^.Info.Sum_ball then
begin { Нужна перестановка}
if St = Beg_Spis then
begin { Перестановка в начале списка: см. рис. 6}
Beg_Spis := Ss;
St^.Ukaz := Ss^.Ukaz;
Ss^.Ukaz := St;
end
else
begin { Перестановке в произвольном месте
списка, кроме начала : см. рис. 7}
Sz := Sp^.Ukaz;
Sp^.Ukaz := St^.Ukaz;
St^.Ukaz := Ss^.Ukaz;
Ss^.Ukaz := Sz;
end;
Key := True; { Перестановка произведена }
end;
Sp := St;
St := St^.Ukaz; { Переход на следующий элемент списка}
If St = Nil then Ss := Nil
else Ss := St^.Ukaz; { Изменение значения
следующего указателя}
end; { Продолжение цикла по просмотру списка }
Until Key = False; { Перестановок больше
не будет}
End; { Конец процедуры сортировки}
Обмен St и Ss в начале списка
3. Ss^.Ukaz := St;
St Ss
Info Info Info Info
begin If St^.Info.Sum_ball < Ss^.Info.Sum_ball then begin { Нужна перестановка} if St = Beg_Spis then begin { Перестановка в начале списка: см. рис. 6} Beg_Spis := Ss; St^.Ukaz := Ss^.Ukaz; Ss^.Ukaz := St; end else begin { Перестановке в произвольном месте списка, кроме начала : см. рис. 7} Sz := Sp^.Ukaz; Sp^.Ukaz := St^.Ukaz; St^.Ukaz := Ss^.Ukaz; Ss^.Ukaz := Sz; end; Key := True; { Перестановка произведена } end; Sp := St; St := St^.Ukaz; { Переход на следующий элемент списка} If St = Nil then Ss := Nil else Ss := St^.Ukaz; { Изменение значения следующего указателя} end; { Продолжение цикла по просмотру списка } Until Key = False; { Перестановок больше не будет} End; { Конец процедуры сортировки} Обмен St и Ss в начале списка 3. Ss^.Ukaz := St; St Ss Info Info Info Info 35
Страницы
- « первая
- ‹ предыдущая
- …
- 33
- 34
- 35
- 36
- 37
- …
- следующая ›
- последняя »