• Tidak ada hasil yang ditemukan

071c4 circular linked list

N/A
N/A
Protected

Academic year: 2017

Membagikan "071c4 circular linked list"

Copied!
3
0
0

Teks penuh

(1)

SENARAI BERANTAI BERPUTAR (CIRCULAR SINGLE LINK LIST)

Senarai Berantai Berputar (circular link list) merupakan bentuk pengembangan senarai berantai (link list) yang pointer elemen terakhirya (last element) menunjuk elemen pertama (Head).

Model Logika

Model Fisik

Head

Oleh karena itu algoritma Traversing, Inserting dan Deleting elemen pada Circular Link List agak sedikit berbeda dengan Link List biasa.

OPERASI DASAR PADA CIRCULAR SINGLE LINKED LIST

A. Operasi Traversing

Algoritma Traversing Circular Single Link List

TraversingCLL(head) If Head = Null

Write(‘List kosong’) Else

P = Head; Do

Write(P->Info); P = P->Next;

While P != Head; Endif

Return

Head

Irna Ika Ira Ida Indah

ALM INFO NEXT

1 Indah 4

2 Ika 6

3

4 Irna 2

5 Ida 1

6 Ira 5

(2)

B. Operasi Searching

Algoritma Mencari Alamat Elemen Ke-K Pada Circular Link List FindKCLL(Head, K, P)

If Head = NULL

Write(‘List kosong’) Else IF K=1 Then

P = Head; Else

I = 1; P = Head; Do

Inc(I);

P = P->Next;

While (P != head) && (I != K); Endif

Endif /*

If (I < K) Then

Write(‘Alamat elemen ke ’, K, ‘ tidak ada !’) Else

Write(‘Alamat elemen ke ’, K, ‘ adalah : ’, P);

*/ Return

Algoritma Mencari Alamat Data (Q) Pada Circular Link List

FindQCLL(Head, Q, P) Found = False; P = Head;

Do

If P->Info = Q Found = True Else P = P->Next;

While (P != Head) && (!Found); /*

If (P->Info <> Q) Then

Write(‘Data ’, Q, ‘ tidak ada !’) Else

Write(‘Alamat Data ’, Q, ‘ adalah : ’, P);

*/ Return

Algoritma Mencari Alamat Elemen Terakhir Pada Circular Link List

FindLastCLL(Head, P) P = Head;

While (P->Next != Head) P = P->Next;

EndOfWhile;

// Write(‘Alamat elemen terakhir adalah : ’, P);

(3)

C. Operasi Inserting

C.1 Sebagai Elemen Pertama / Di Awal List

Algoritma Menyisipkan Elemen Pada Awal Cirular Link List

InsertFirstCLL(Head, X) Malloc(Temp);

Temp->Info = X;

If Head = NULL Then Temp->Next=Temp; Else

Temp->Next = Head; FindLastCLL(Head, P) P->Next = Temp;

Endif

Head = Temp; Return

C.2 Sebagai Elemen Terakhir

Algoritma Menyisipkan Elemen Pada Akhir Circular Link List

InsertLast(Head, X) Malloc(Temp); Temp->Info = X;

If Head = NULL Then Temp->Next=Temp; Else

Temp->Next = Head;

FindLastCLL(Head,P); {Alm Elemen terakhir (P)} P->Next = Temp;

Endif Return

C.3 Sebagai Elemen Ke-N yang Temp (1 < N <= MAX)

Referensi

Dokumen terkait

Erick Juriara E, M.Si Pembina Utama Muda NIP.. Erick Juriara E., M.Si Pembina Utama

Strategi ini bertujuan untuk mendapatkan keuntungan lebih melalui penekanan biaya produksi dengan menemukan pemasok alternatif sehingga harga bahan baku

Berdasarkan hasil uji antiseptik dengam metode replika didapatkan hasil bahwa gel ekstrak daun cabe rawit memiliki efektivitas sebagai gel antiseptik dilihat dari

Justru siraman eksudat akar dari segawe menunjukkan pengaruh positif terhadap pertumbuhan tanaman kakao yang ditunjukkan pada peningkatan jumlah daun, tinggi

* Senarai berantai ganda (doubly linked-list) atau senarai dua arah (two-way list), setiap simpulnya mempunyai 2 buah pointer, dengan pointer pertama menunjuk

Double Link list selalu memiliki pointer petunjuk yang selalu menunjuk pada awal dari list yang disebut Head.. Double Link list juga selalu memiliki pointer petunjuk

Link list juga selalu memiliki pointer petunjuk menunjuk pada akhir dari list yang disebut Tail, kecuali untuk jenis circular.. Setiap simpul yang terbentuk selalu memiliki nilai

Kondisi linked list masih kosong atau posisi penyisipan kurang dari atau sama dengan 1 Jika kondisi ini terjadi, maka langkah yang dilakukan adalah sangat mudah yaitu dengan