Одномерные массивы. Вставка, удаление элемента.
презентация к уроку (информатика и икт, 9 класс) на тему

Альшевская Антонина Алексеевна

Расматриваются алгоритмы вставки и удаления элемента, в том числе и бинарная вставка в отсортированный массив.

Скачать:

ВложениеРазмер
Office presentation icon massivy_vstavka_i_udalenie.ppt538 КБ

Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Одномерные массивы Вставка и удаление элемента

Слайд 2

Вставка и удаление элементов Алгоритм удаления элемента : определить номер удаляемого элемента - k (ввести с клавиатуры или найти из каких-то условий) сдвинуть все элементы начиная с k -ого на 1 элемент влево последнему элементу массива присвоить значение 0 При удалении элемента размер массива не меняется! Поэтому необходимо далее в программе указывать не до n , а до n -1.

Слайд 3

Элемент который нужно удалить дан массив А: 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

Слайд 4

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 .

Слайд 5

Алгоритм вставки элемента: (после k -ого) первые k элементов остаются без изменений все элементы, начиная с k -ого сдвигаются на 1 позицию назад на место ( k +1 )-ого элемента записываем новый элемент. Массив из n элементов, в который вставляется k элементов необходимо определять как массив, имеющий размер n + k . Вставка перед элементом отличается только тем, что сдвигаются все элементы, начиная с k -ого и на место k -ого записываем новый

Слайд 6

дан массив А: 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 позиция для добавления нового элемента

Слайд 7

Пример : Вставить 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 .