Одномерные массивы. Вставка, удаление элемента.
презентация к уроку (информатика и икт, 9 класс) на тему
Расматриваются алгоритмы вставки и удаления элемента, в том числе и бинарная вставка в отсортированный массив.
Скачать:
| Вложение | Размер |
|---|---|
| 538 КБ |
Предварительный просмотр:
Подписи к слайдам:
Вставка и удаление элементов Алгоритм удаления элемента : определить номер удаляемого элемента - k (ввести с клавиатуры или найти из каких-то условий) сдвинуть все элементы начиная с k -ого на 1 элемент влево последнему элементу массива присвоить значение 0 При удалении элемента размер массива не меняется! Поэтому необходимо далее в программе указывать не до n , а до n -1.
Элемент который нужно удалить дан массив А: 3 5 6 8 12 15 17 18 20 25 k:=4 3 5 6 12 15 17 18 20 25 25 3 5 6 12 15 17 18 20 25 0
const n= 30; var a : array [1..n] of integer; k, i : integer; begin {ввод массива и k } ... for i := k to n-1 do a[i] := a[i+1]; a[n] := 0; writeln( Результат : ); for i := 1 to n-1 do write ( a[i] :3); readln; end .
Алгоритм вставки элемента: (после k -ого) первые k элементов остаются без изменений все элементы, начиная с k -ого сдвигаются на 1 позицию назад на место ( k +1 )-ого элемента записываем новый элемент. Массив из n элементов, в который вставляется k элементов необходимо определять как массив, имеющий размер n + k . Вставка перед элементом отличается только тем, что сдвигаются все элементы, начиная с k -ого и на место k -ого записываем новый
дан массив А: k:=4 3 5 6 8 8 12 15 17 18 20 25 3 5 6 8 100 12 15 17 18 20 25 1 2 3 4 5 6 7 8 9 10 3 5 6 8 12 15 17 18 20 25 позиция для добавления нового элемента
Пример : Вставить 100 после элемента номер которого вводится с клавиатуры: const n= 30; var a : array [1..n+1] of integer; k, i : integer; begin { ввод массива и k} ... for i := n downto k+1 do a[i+1] := a[i]; a[k+1] := 100; writeln( Результат : ); for i := 1 to n+1 do write ( a[i] :3); readln; end .
