ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »
