Delete adalah kebalikan dari insert. Tugasnya untuk menghapus sebuah elemen. Tentunya count pasti berkurang satu, dan elemen-elemen sesudahnya akan bergeser mundur. Misalnya:
Agus, Bagus, Cagus, Dagus, Egus, Fagus.
Kita hendak menghapus Cagus, maka delete cukup menggeser Dagus, Egus, dan Fagus mundur.
Agus, Bagus, Dagus, Egus, Fagus
Programnya kira-kira seperti ini:
procedure Delete(indeks: INTEGER);
var
i: INTEGER;
begin
for i:=indeks to Count-1 do
begin
List[i]:=List[indeks+1];
end;
Count:=Count - 1;
end;
Prosedur ini tidak sempurna. Beliau belum mencakup kemungkinan kalau indeks yang hendak dihapus ada di luar list. Juga kalau datanya lebih rumit, seperti misalnya object, maka perlu operasi tambahan untuk menghapus objek tersebut dari memori. Ini tidak dibahas di sini.
Nah, kadang-kadang kita men-delete tidak berdasarkan indeks, tetapi berdasarkan isi elemen tertentu, misalnya:
Delete("Bagus");
Nah, jika kamu menghendaki delete berfungsi seperti ini, maka kamu harus memadukannya dengan search.
Add new comment