Array vs Pointer
Kriteria
Sifat Ukuran Alokasi variabel
Pointer Statis Dinamis Pasti Sesuai kebutuhan Saat program Dapat diatur dijalankan sesuai kebutuhan sampai selesai
Array
- Simbol ^ menandakan bahwa variabel tersebut menunjuk ke lokasi tertentu pada memori
DataMahasiswa : PointMhs;
[1] FirstName = Dewi LastName = Yanti [2] FirstName = Dewi [3] LastName = Dewi Dewi Dewi
Saya Mahasiswa
Statistika
NIL
NODE
Single Linked List: LIFO (Last In First Out) : Stack FIFO (First In First Out) : Queue
Pembuatan Node
Type Point = ^RecPoint; RecPoint = Record isi : TipeData; next : Point; End; Var Head, Now : Point;
Procedure Insert
Procedure INSERT(elemen:TipeData); Var Now : Point; Begin New(Now); Now^.isi = elemen; if Head = NIL then Now^.next := NIL; else Now^.next := Head; end if; Head := Now; End;
NIL
35
isi
next
35 next
NIL
New(Now); Now^.isi := 5;
Now
5 isi next
5 next
35
NIL
New(Now); Now^.isi := 9; Head <> NIL then Now^.next := Head; Head := Now;
Now Head
9 next
35
NIL
Pembuatan Node
Type Point = ^RecPoint; RecPoint = Record isi : TipeData; next : Point; End; Var Head, Tail, Now : Point;
Procedure Insert
Procedure INSERT(elemen:TipeData); Var Now : Point; Begin New(Now); if Head = NIL then Head := Now; else Tail^.next := Now; end if; Tail := Now; Tail^.next := NIL; Now^.isi := elemen; End;
35 isi next
NIL
35
35 isi NIL
5
isi next
NIL
next
insert(9)
Head Now Tail
35
NIL next
isi
insert(1)
Head Now Tail
35
1 isi next
NIL