알고리즘 - 연속 목록에 항목 삽입

삭제와 마찬가지로 삽입에 두 가지 경우가 있습니다.

시작과 중간에 삽입:

이 경우 삽입 할 요소의 위치를 찾아야합니다. 작업은 두 단계로 수행됩니다.
  • 배열 크기를 1.
  • 모든 요소를 n에서 k로 이동한 다음 k.

끝에 삽입:

오프셋이 수행되지 않기 때문에 매우 간단한 경우입니다.

두 경우를 결합하는 알고리즘:

알고리즘 삽입;
Var 
  i,k,x: 정수;
  T [1..n] : 정수;
시작
  읽기;
  n:=n+1;
  n에서 k까지 i에 대해 not-1
  faire
    T[i+1] := T[i];
  finfaire
      T[k] := x;
End

Procedure:

< / div>
프로 시저 삽입 (L : 목록, k : 1..lmax, x : 요소) < / span>< / div>
var i,n:1..lmax;
시작
  n : = L.길이;
  L. 길이 : = n + < / span>1;
  n에서 k까지 i에 대해 not-1
  faire
    L.T[i+1] := L.T[i];
  finfaire
  L.T[i] := x;