# sample) do i :=

sample) do i := i+1; Search := i end; type index = 1..N; {N&gt;1} massive1 = array [index] of index; procedure RandomN (var Mas: massive1); var i, K: index; begin for i := 1 to N do Mas[i] := i; Randomize; for i := N downto 2 do begin K := Random(i) + 1; Swap (Mas[K], Mas[i]); end; end; Ясно, что возврат функцией значения N свидетельствует об отсутствии образца в массиве. Упражнение #5. Напишите функцию SearchLast, возвращающую индекс последнего (первого с конца) вхождения образца в вектор. Легко представить ситуацию, когда требуется обнаружить все вхождения образца в вектор, но тогда алгоритм уже ничем не будет отличаться от последовательного перебора E1-1. Ничего нового в отношении трудоемкости алгоритма E2-2 сказать нельзя: его асимптотическая эффективность та же, что и у последовательного перебора, а именно - O(n). Если нас интересует более точная оценка, то ее дает вероятностный подход, и результат таков: при поиске образца среди

Индекс
Элементарные функции Линейные уравнения Нелинейные уравнения Случайные числа