1 / 16

Senarai Berantai Berkepala & Senarai berantai Berputar

Senarai Berantai Berkepala & Senarai berantai Berputar. x2. x3. x5. x6. x1. x4. Kepala. Senarai Berantai Berkepala.

glynis
Download Presentation

Senarai Berantai Berkepala & Senarai berantai Berputar

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Senarai Berantai Berkepala & Senarai berantai Berputar x2 x3 x5 x6 x1 x4 Kepala

  2. Senarai Berantai Berkepala • Proses penghapusan simpul sering mengalami masalah terutama penghapusan simpul akhir yang mana penghapusan hanya boleh dilakukan jika jumlah simpul dalam senarai lebih dari satu, hal ini tidak efisien jika harus dilakukan penghapusan semua simpul dengan penghapusan dimulai dari simpul yang paling akhir dimana ketika senarai hanya memiliki satu simpul harus mengganti metode penghapusan. • Untuk mengatasi hal tersebut dapat dibuat senarai berantai berkepala yaitu menambahkan sebuah simpul yang biasaya tidak memiliki informasi atau nilai, namun demikian tidak tertutup kemungkinan digunakan untuk kepentingan lain misalnya mencatatkan jumlah simpul yang ada dalam senarai ataupun informasi lain, tapi secara pasti tidak menyimpan informasi yang sama dengan informasi yang ada pada simpul lainnya

  3. Menambah Simpul Awal Kepala Defenisi Struktur data Simpul = ^data Data = record info : tipedata next : Simpul end Baru New(Baru) Baru Baru^.info = x 10 Membentuk simpul Kepala New(Kepala) Kepala^.next = nil Baru 10 Baru^.next = nil Kepala Kepala^.next = baru Kepala Baru 10

  4. Kepala 10 New(baru) Baru^.info = x If kepala^.next = nil Then Baru^.next = nil kepala^.next = baru Else Baru^.next = kepala^.next Kepala^.next = baru fi Baru 20 Jika kepala^.next <> nil maka Baru^.next = Kepala^.next Kepala^.next= baru

  5. New(baru) Baru^.info = x If kepala^.next = nil Then Baru^.next = nil kepala^.next = baru Else Baru^.next = kepala^.next Kepala^.next = baru fi New(baru) Baru^.info = x Baru^.next = kepala^.next Kepala^.next = baru fi

  6. Menambah Simpul tengah & akhir Menambah Simpul di akhir pada senarai berantai berkepala, pada prinsipnya sama dengan penambahan simpul pada senarai berantai yang sudah dibahas sebelumnya, tetapi penelusuran dilakukan dengan menempatkan akhir = kepala, dengan demikian tidak perlu dilakukan pengecekan apakah list masih kosong atau tidak, Dan untuk penambahan simpul tengah adalah sama, tetapi penelusuran bantu dilakukan mulai dari kepala (bantu = kepala)

  7. Menambah Di Akhir Procedure Tambah2(x : tipedata) New(baru) Baru^.info = X Baru^.Next = nil If awal = nil Then Awal = baru Else Akhir = awal While akhir^.next <> nil Do Akhir = Akhir^.next e-while akhir^.next = baru fi Procedure tambah2b(x : tipedata); New(baru) Baru^.info = x Baru^.next = nil Akhir = kepala While akhir^.next<> nil do akhir = akhir^.next E-while Akhir^.next = baru

  8. Menambah Simpul Akhir Procedure tambah2b(x : tipedata); New(baru) Baru^.info = x Baru^.next = nil Akhir = kepala While akhir^.next<> nil do akhir = akhir^.next E-while Akhir^.next = baru Kepala Baru Baru 10 Baru 10 Baru Kepala akhir 10

  9. Kepala Buat Algoritma untuk mencari IPK Terbesar Buat algoritma Untuk mencari ipk rata-rata Buta algoritma untuk menghapus simpul-simpul yang dimulai dari simpul paling akhir Simpul = ^data Data = record Nama : String; NIM : string IPK : Real sem : integer Next : Simpul end

  10. Senarai Berantai Berputar Kepala New(kepala) Kepala^.next = Kepala

  11. x2 x3 x5 x6 x1 x4 Kepala x1 x2 x1 Kepala Kepala

  12. Menambah Simpul Awal Procedure tambah1(elemen : tipedata) New (Baru) Baru^.info = elemen Baru^.next = Kepala^.next Kepala^.Next = baru Kepala x1 Baru

  13. Menambah Simpul Awal Procedure tambah1(elemen : tipedata) New (Baru) Baru^.info = elemen Baru^.next = Kepala^.next Kepala^.Next = baru Kepala x1 Baru

  14. Menambah Simpul Awal Procedure tambah1(elemen : tipedata) New (Baru) Baru^.info = elemen Baru^.next = Kepala^.next Kepala^.Next = baru Kepala x1 Baru

  15. x1 New(Baru) Kepala Baru^.info = elemen x2 Baru^.Next = Kepala^.Next Kepala^.Next= baru baru x1 x2 Kepala

  16. Menambah Di Akhir Kepala 20 akhir 30 Kepala Baru 30 20

More Related