1. Изменить условие в операторе while так, чтобы он читался следующим образом: "Искомое значение не равно теку- щему входному значению, и есть еще входные значения, подлежащие проверке".
2.
Z ← 0;
X ← 1;
repeat {Z ← Z + X;
X ← X + 1}
until (X = 6)
3.
Cheryl |
Alice |
Alice |
George |
Cheryl |
Bob |
Alice |
George |
Cheryl |
Bob |
Bob |
George |
4. Настаивать на том, чтобы предшествующий элемент помещался на то же место в списке, бессмысленно. Например, сделайте предложенные изменения, а затем примените новую программу к списку, все элементы которого одинаковы.
5.
procedure sort(Список) N ← 1;
while (N < длины Списка) do
{J ← N+1;
while (J ≤ длины Списка) do
{if (элемент в позиции J < элемент в позиции N)
then {поменять местами эти два элемента) J ← J+1}
N ← N+1}
6. Приведенное ниже решение является неэффективным. Можете ли вы сделать его более эффективным?
procedure sort(Список) N ← длина Cписка; while (N > 1) do
{J ← длина Списка;
while (J > 1) do
{if (элемент в позиции J < элемента в позиции J-1)
then {поменять местами эти два элемента} J ← J–1}
N ← N–1}
1. Первый подсписок состоит из имен, следующих за именем Henry, т.е. Irene, Joe, Karl, Larry, Mary, Nancy и Oliver. Да- лее идут имена из этого списка, предшествующие имени Larry, т.е. Irene, Joe и Karl. Теперь в очередном цикле поиска иско- мое имя Joe будет найдено в середине рассматриваемого подсписка.
2. 8, 17
3.
Alice Alice
Carol Bob
Bob Carol
Larry Larry
John John
В итоге будет выполнено четыре вызова процедуры.
4. В результате выполнения процесса список будет отсортирован. Однако его выполнение будет сопровождаться из- лишней потерей времени, поскольку при первом вызове процедуры первый элемент списка сначала удаляется, а потом воз- вращается на прежнее место.
5. Будет выполнено несколько вызовов процедуры. При каждом из них элемент будет просто удаляться из списка, а за- тем возвращаться на прежнее место.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.