Senarai Berantai Berkepala - PowerPoint PPT Presentation

About This Presentation
Title:

Senarai Berantai Berkepala

Description:

Title: Senarai Berantai Berkepala & Senarai berantai Dua Arah Author: hibah-a1 Last modified by: SSinurat Created Date: 11/23/2005 3:40:32 PM Document presentation format – PowerPoint PPT presentation

Number of Views:252
Avg rating:3.0/5.0
Slides: 17
Provided by: hiba6
Category:

less

Transcript and Presenter's Notes

Title: Senarai Berantai Berkepala


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
  • Defenisi Struktur data
  • Simpul data
  • Data record
  • info tipedata
  • next Simpul
  • end

Menambah Simpul Awal
Kepala
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 ltgt 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.in
fo X Baru.Next nil If awal nil Then
Awal baru Else Akhir awal While
akhir.next ltgt 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.nextltgt 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.nextltgt nil do akhir
akhir.next E-while Akhir.next baru
Kepala
Baru
Baru
10
Baru
10
Baru
Kepala
akhir
10
9
Kepala

N1 01 3.02 4
N2 02 2.09 4
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
N3 03 3.08 5
Simpul data Data record Nama
String NIM string IPK
Real sem integer Next
Simpul end
Nn xx I1 S
Nm xx I2 s
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
x2
x1
Kepala
16
Menambah Di Akhir
Kepala
20
akhir
30
Kepala
Baru
30
20
Write a Comment
User Comments (0)
About PowerShow.com