powerpoint presentation -...

41
*

Upload: vanquynh

Post on 05-Jun-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 2: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

1. Array

1. Linear List

2. Stack

3. Queue

2. List

1. Connected List

2. Circular List

3. Doubly-linked List

4. Multi list structure

3. Tree Structure

1. Apa ?

2. Bagaimana cara implementasinya ?

Page 3: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 4: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Sekumpulan elemen yang diatur secara terurut

*Linear List tidak sama dengan Connected-List

][,],1[],[],1[,],2[],1[ nxkxkxkxxx

Page 5: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

No. Operasi

1 Menambahkan sebuah elemen sebelum elemen ke-k

2 Menghapus elemen ke-k

3 Membaca/menulis isi elemen ke-k

4 Mencari elemen dengan key tertentu

5 Menggabungkan beberapa list menjadi satu

6 Memecah sebuah list ke beberapa buah

7 Mengcopy sebuah list

8 Menghitung banyaknya elemen dalam sebuah list

Page 6: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Tidak semua operasi list diperlukan pada setiap program

*Penentuan struktur data didasarkan pada operasi yang diperlukan saja agar bisa berjalan dengan efisien

*Pada sebuah Linear List, penyisipan dan penghapusan elemen dapat dijalankan di sebarang posisi

*Bentuk khusus linear list:

Penambahan elemen dan penghapusannya

dilakukan di posisi terdepan atau

posisi terbelakang saja

Stack

Queue

Stack dan Queue juga merupakan salah satu jenis list

Page 7: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Pada sebuah Linear List, penyisipan dan penghapusan elemen dapat dijalankan di sebarang posisi

*Penambahan dan penghapusan elemen pada stack/queue dilakukan di posisi terdepan atau posisi terbelakang saja

1 2 6 3 4 5

1 2 6 3 4 5

1 2 6 3 4 5

List

Stack

Queue

Page 8: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 9: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 10: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

1

PUSH

top== bottom

Page 11: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

PUSH

1

2 top

bottom

Page 12: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

PUSH

1

2

3

bottom

top

Page 13: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

PUSH

1

2

3

4

bottom

top

Page 14: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

PUSH

1

2

3

4

5

bottom

top

Page 15: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi PUSH : Menambahkan elemen

pada sebuah stack

PUSH

1

2

3

4

5

6

bottom

top

Page 16: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1

2

3

4

5

6

bottom

top

Page 17: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1

2

3

4

5

bottom

top

Page 18: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1

2

3

4

bottom

top

Page 19: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1

2

3

bottom

top

Page 20: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1

2

bottom

top

Page 21: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan dan penghapusan elemen

dilakukan pada elemen list yang terletak di

paling depan

*Yang dihapus adalah elemen yang paling

terakhir ditambahkan

*Nama lain: LIFO (Last In First Out)

*Operasi POP : Menghapus sebuah elemen

dari sebuah stack

POP

1 top==bottom

Page 22: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

PUSH dan POP

Page 23: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Stack Overflow

Menambahkan data pada sebuah stack yang

telah penuh

*Stack Underflow

Menghapus data dari sebuah stack yang

sudah kosong

Page 24: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 25: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

Page 26: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

1 ENQUEUE

front==rear

Page 27: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

1 ENQUEUE

front

2

rear

Page 28: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

1 ENQUEUE

front

3

rear

2

Page 29: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

ENQUEUE 1

front

3 2 4

rear

Page 30: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

ENQUEUE 1

front

3 2 5

rear

4

Page 31: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi ENQUEUE: menambahkan data

pada sebuah list

ENQUEUE 1

front

3 2 5 4 6

rear

Page 32: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE 1

front

3 2 5 4 6

rear

Page 33: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE

front

3 2 5 4 6

rear

Page 34: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE

front

3 5 4 6

rear

Page 35: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE

front

5 4 6

rear

Page 36: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE

front

5 6

rear

Page 37: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

*Penambahan data dilakukan pada sebuah

ujung sebuah list, sedangkan penghapusan

data dilakukan pada ujung yang lain

*Data yang dihapus adalah data yang paling

awal ditambahkan

*Nama lain: FIFO (First In First Out)

*Operasi DEQUEUE: menghapus data pada

sebuah list

DEQUEUE 6

front==rear

Page 38: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

*

ENQUEUE dan DEQUEUE

Page 39: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

push(10);

push(2);

pop();

push(20);

pop();

push(15);

push(5); *

*Gambarkan kondisi stack setelah dilakukan operasi berikut:

10

10

2 10

10

20 10

10

15

10

15

5

Page 40: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

enqueue(10);

enqueue(32);

enqueue(5);

dequeue();

enqueue(10);

dequeue();

dequeue();

**Gambarkan kondisi queue setelah dilakukan operasi berikut:

10

32 10

32 5 10

32 5

5 10 32

10

Page 41: PowerPoint Presentation - boldson.staff.gunadarma.ac.idboldson.staff.gunadarma.ac.id/Downloads/files/38431/Pertemuan+ke-5... · *Penentuan struktur data didasarkan pada operasi

***Kapasitas Max Stack dan Queue adalah 5

push(9);

push(12);

pop();

push(21);

pop();

pop();

pop();

push(33);

enqueue(10);

enqueue(32);

enqueue(5);

enqueue(10);

enqueue(11);

enqueue(10);

dequeue();

enqueue(19);

dequeue();

enqueue(10);

dequeue();

dequeue();

enqueue(15);

enqueue(16);

enqueue(36);

enqueue(13);

enqueue(77);

dequeue();

Kerjakan untuk

akhiran NPM Ganjil

Kerjakan untuk

akhiran NPM Genap

push(64);

push(3);

pop();

push(17);

pop();

pop();

pop();

push(19);

Waktu : 30 menit