Struktur Data dalam algoritma

advertisement
Struktur data
dalam algoritma
Ali Ridho Barakbah
Struktur data
•
•
•
•
•
Variabel
Array
Matriks
Stack
Queue
Variabel
• Sesuatu alokasi tempat di memori untuk
menyimpan suatu nilai
• Variabel harus diberi nama sebagai
identifikasi
• Contoh:
nilai
X
Array
• Sesuatu alokasi beberapa tempat di memori
secara berurutan yang digunakan untuk
menyimpan beberapa nilai.
• Array harus diberi nama sebagai identifikasi
• Cara mengaksesnya adalah dengan
menyebutkan nama array dan indeksnya
• Contoh:
1
bilangan
2
3
4
Matriks
• Sesuatu alokasi beberapa tempat di memori
secara berurutan yang digunakan untuk
menyimpan beberapa nilai.
• Mirip dengan array, tetapi 2 dimensi
• Matriks harus diberi nama sebagai identifikasi
• Cara mengaksesnya adalah dengan
menyebutkan nama matriks serta baris dan
kolomnya
1
• Contoh:
1
M
2
2
3
Stack
• Mekanisme penyimpanan nilai secara LIFO
(Last In First Out)
• Bekerja seperti tumpukan
• Stack harus diberi nama sebagai identifikasi
• Cara mengaksesnya adalah dengan melakukan
aksi push dan pop
push
• Contoh:
S
pop
Queue
• Mekanisme penyimpanan nilai secara FIFO
(First In First Out)
• Bekerja seperti antrian
• Queue harus diberi nama sebagai identifikasi
• Cara mengaksesnya adalah dengan melakukan
aksi enqueue dan dequeue
Q
• Contoh:
enqueue
dequeue
Contoh penggunaan variabel
bilangan
hasilbagi
bilangan / 2
sisabagi
bilangan – (hasilbagi * 2)
START
Masukkan
bilangan
Algoritma bilangan
ganjil/genap
hasilbagi = bilangan / 2
sisabagi = bilangan – (hasilbagi * 2)
variabel
sisabagi = 0
“Bilangan ganjil”
“Bilangan genap”
END
Contoh penggunaan array
1
bil
temp
2
3
Jika (bil[2] < bil[1])
temp = bil[1]
bil[1] = bil[2]
bil[2] = temp
Jika (bil[3] < bil[1])
temp = bil[1]
bil[1] = bil[3]
bil[3] = temp
Jika (bil[3] < bil[2])
temp = bil[2]
bil[2] = bil[3]
bil[3] = temp
START
Masukkan bil[ ]=n
Deklarasi temp
array
Algoritma
mengurutkan 3
bilangan
bil[2]<bil[1]
Y
temp = bil[1]
bil[1] = bil[2]
bil[2] = temp
T
T
T
bil[3]<bil[1]
Y
temp = bil[1]
bil[1] = bil[3]
bil[3] = temp
END
bil[3]<bil[2]
Y
temp = bil[2]
bil[2] = bil[3]
bil[3] = temp
Tampilkan bil
Contoh kasus
B
7
6
E
1
A
4
6
5
3
C
2
D
Representasikan kasus diatas menggunakan
struktur data yang tepat?
B
7
6
E
1
A
4
6
5
3
C
2
D
A
B
C
D
E
A
0
6
4
-
-
B
-
0
-
-
7
C
3
1
0
2
-
D
-
-
-
0
5
E
-
-
6
-
0
Download