apa itu Array Switching Bubble Sort?
YUK!!! kenalan sama Array Switching Bubble Sort.
*materi ini dibuat oleh dosen saya atas nama Habibah Nurfauziah, S.Kom, M.Si beliau merupakan salah satu dosen di STMIK MUHAMMADIYAH JAKARTA
apa itu Array Switching Bubble Sort?
YUK!!! kenalan sama Array Switching Bubble Sort.
*materi ini dibuat oleh dosen saya atas nama Habibah Nurfauziah, S.Kom, M.Si beliau merupakan salah satu dosen di STMIK MUHAMMADIYAH JAKARTA
1. Buat program untuk mengkonvesi dari bilang desimal ke representasi bilangan biner menggunakan program stack di atas. 2. Kembangkan program di atas dengan membuat stack yang berisi Object sehingga isi Stack dapat diisi sembarang object seperti object Double, objeck Buku dan lain sebaginya. Dengan potongan program driver sebagaimana gambar 5 dan class Buku sebagaimna gambar 6 akan menghasilkan keluaran sebagaimana gambar 7
2. TYPE-TYPE DATA DALAM STRUKTUR DATA
1. Type data sederhana.
amialnya Integer, real, boolean dan karakter.
b. Type data sederhana majemuk.
misalnya String.
a. Tipe Integer
Merupakan Bilangan Bulat dan tidak mengandung pecahan, seperti: ..-3,-2,-
1,0,1,2,3
b. Real / Floating Point
Data yang merupakan bilangan pecahan. Jenis data real/float ditulis dengan
menggumakan titik (koma) decimal.
Misal: 0.32 4,35 -131.128
3. Type Real dapat juga ditulis dengan rumus :
M= Pecahan
R= Radix
E=Exponen
X= Hasil Bilangan
Misal : 3.2*10 pangkat -1= 0.32
4.35* 10 pankat 2= 435
c. Boolean atau Logical
Type data yang hanya mempunyai dua bentuk keluaran yang nilai True dan False (
Benar dan salah ) yang dinyatakan dengan 1 dan 0, sehingga satuan data yang terpakai
cukup satu bit saja. Operator yang digunakan adalah : And, Or, Not,Xor.
4. d. Character
Type data yang terdiri dari aksara (symbol) yang meliputi digit numeric, character
alfabet, dan special character. Untuk menuliskan tipe char, karakter perlu ditulis di
dalam tanda petik tunggal(‘).
Contoh :
‘A’-karakter berupa huruf A
‘1’-karakter berupa angka 1
‘*’-karakter symbol *
d.String
Merupakan type data majemuk yang berbentuk dari kumpulan character sebanyak
256 (default) dengan jangkauan nilai 0 – 255. Kumpulan character yang digunakan
untuk membentuk String dinamakan alphabet. Pemberian nilai string diapit dengan
tanda petik ganda (“).
5. Struktur Data
A.Struktur data sederhana yang terdiri dari:
misalnya array dan record.
B. Struktur data majemuk yang terdiri dari :
Linier Stack, Queue, serta List dan Multilist
a.Struktur data sederhana
1.Array
Tipe Array(larik) yaitu sekumpulan elemen bertipe sama secara berurutan
(sequential).Masing-masing elemen dapat diakses tersendiri, melalui indeks array
bertipe ordinal (mempunyai urutan tertentu).
Bentuk Umum :
Type
NamaArray = Array[tipeindeks] of TipeData;
Ciri-ciri Array :
- setiap elemen data array diacu melalui indeksnya
- indek array suatu tipe yang mempunyai keterurutan (ada suksesor dan predecessor).
Ada 2 cara mendeklarasikan larik yaitu :
1) Sebagai tipe data baru
6. Bentuk Umum :
Type larik=Array[1..n] of datatype ;
Var x : larik ;
2) Langsung sebagai variabel
Bentuk Umum :
Var x : Array[1..n] of datatype ;
Keuntungan :
Efisien memori ( bila semua elemen terisi,akses elemen waktunya sama).
Pengaksesan acak (sembarang elemen bisa diacu langsung).
Mudah menelusuri elemen pendahulu (predecessor) atau penerus(successor).
Kelemahan :
Bertipe homogen
Penyisipan dan penghapusan elemen tidak efisien.
Boros memori ( bila elemen tidak terisi).
Pada suatu aplikasi,representasi statis tidak dimungkinkan
7. Pada suatu aplikasi,representasi statis tidak dimungkinkan
Macam-macam Array :
a. Array Dimensi Satu : larik tersusun dalam satu baris/1 index elemen bertipe data
yang sama, tetapi isi dari elemen tersebut boleh berbeda.
Bentuk Umum :
namaArray : array[index1] of tipedata
b. Array Dimensi Dua : larik terdiri dari beberapa baris dan beberapa kolom/2 index
elemen yang bertipe sama.Contohnya matrik.
Bentuk Umum :
namaArray : array[index1,index2] of tipedata
Bentuk Umum :
namaArray : array[index1,index2] of tipedata
8. 2.Record
Record adalah himpunan dari elemen-elemen yang heterogen. Heterogen
adalah elemen-elemennya dapat mempunyai tipe data yang berbeda.
Beberapa hal yang perlu diketahui dalam record sbb:
1. ELEMENTARY ITEM adalah suatu field yang tidak mempunyai subfield.
2. GROUP ITEM adalah suatu field yang mempunyai subfield.
3. TUPEL adalah gabungan atribut yang menjadi suatu informasi dari proses basis
data.
9. b.Struktur data majemuk
1.Struktur Data Linear ialah data yang dipresentasikan berhubungan dengan data
lainnya dengan teratur (lurus) sehingga membentuk barisan antara data satu
dengan data lainnya.
Linked List ialah suatu record data yang dihubungkan satu dengan lainnya
menggunakan pointer.
Fungsi-fungsi yang dapat dipakai dalam operasi linked list adalah:
1.menambah simpul di belakang
2.menambah simpul di depan
3. menyisipkan simpul di tengah
4. menghapus simpul di depan
5. menghapus simpul di tengah
6. menghapus simpul di belakang
7. mencetak list dengan membaca maju
8. mencetak list dengan membaca mundur
9. mencari data pada list
10. 2.Pengertian Stack atau Tumpukan adalah suatu stuktur data yang penting dalam
pemrograman yang mempunyai sifat LIFO (Last In First Out), Benda yang terakhir
masuk ke dalam stack akan menjadi benda pertama yang dikeluarkan dari stack.
Stack (Tumpukan) adalah list linier yang dikenali elemen puncaknya (TOP) dan
Aturan penyisipan dan penghapusan elemennya tertentu. Penyisipan selalu dilakukan
“di atas“ TOP dan Penghapusan selalu dilakukan pada TOP.
OPERASI-OPERASI/FUNGSI STACK Push : digunakan untuk menambah item pada stack
pada tumpukan paling atas
Pop : digunakan untuk mengambil item pada stack pada tumpukan paling atas
Clear : digunakan untuk mengosongkan stack
IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh
11. c.Queue pada Struktur Data atau antrian adalah sekumpulan data yang mana
penambahan elemen hanya bisa dilakukan pada suatu ujung disebut dengan
sisibelakang(rear), dan penghapusan(pengambilan elemen) dilakukan lewat ujung lain
(disebut dengan sisi depan atau front).
Pada Queue atau antrian Terdapat satu buah pintu masuk di suatu ujung dan satu
buah pintu keluar di ujung satunya dimana membutuhkan variabel Head dan Tail (
depan/front, belakang/rear).
Karakteristik Queue atau antrian :
1. elemen antrian
2. front (elemen terdepan antrian)
3. tail (elemen terakhir)
4. jumlah elemen pada antrian
5. status antrian Operasi pada Queue atau antrian
1. tambah(menambah item pada belakang antrian)
2. hapus (menghapus elemen depan dari antrian)
3. kosong( mendeteksi apakah pada antrian mengandung elemen atau tidak)
12. Operasi-operasi Queue :
1. Create() Untuk menciptakan dan menginisialisasi Queue Dengan cara membuat
Head dan Tail = -1
2. IsEmpty() Untuk memeriksa apakah Antrian sudah penuh atau belum Dengan cara
memeriksa nilai Tail, jika Tail = -1 maka empty Kita tidak memeriksa Head, karena Head
adalah tanda untuk kepala antrian (elemen pertama dalam antrian) yang tidak akan
berubah-ubah Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian
kebelakang, yaitu menggunakan nilai Tail.
3. IsFull Untuk mengecek apakah Antrian sudah penuh atau belum Dengan cara
mengecek nilai Tail, jika
Tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh
4. Enqueue Untuk menambahkan elemen ke dalam Antrian, penambahan elemen
selalu ditambahkan di elemen paling belakang Penambahan elemen selalu
menggerakan variabel Tail dengan cara increment counter Tail terlebih dahulu
5. Dequeue() Digunakan untuk menghapus elemen terdepan/pertama (head) dari
Antrian Dengan cara menggeser semua elemen antrian kedepan dan mengurangi Tail
dgn 1 Penggeseran dilakukan dengan menggunakan looping.
13. 6. Clear() Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan
Head = -1 Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus
arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-
elemen Antrian tidak lagi terbaca
7. Tampil() Untuk menampilkan nilai-nilai elemen Antrian Menggunakan looping dari
head s/d tail
d. tree adalah sebuah struktur data yang secara bentuk menyerupai sebuah pohon,
yang terdiri dari serangkaian node (simpul) yang saling berhubungan. Node-node
tersebut dihubungkan oleh sebuah vektor. Setiap node dapat memiliki 0 atau lebih
node anak (child). Sebuah node yang memiliki node anak disebut node induk (parent).
Sebuah node anak hanya memiliki satu node induk. Sesuai konvensi ilmu komputer,
tree bertumbuh ke bawah, tidak seperti pohon di dunia nyata yang tumbuh ke atas.
Dengan demikian node anak akan digambarkan berada di bawah node induknya. Node
yang berada di pangkal tree disebut node root (akar), sedangkan node yang berada
paling ujung pada piramida tree disebut node leaf (daun).
14. e.Graf adalah kumpulan noktah (simpul) di dalam bidang dua dimensi yang
dihubungkan dengan sekumpulan garis (sisi). Graph dapat digunakan untuk
merepresentasikan objek-objek diskrit dan hubungan antara objek-objek
tersebut. Representasi visual darigraph adalah dengan menyatakan objek
sebagai noktah, bulatan atau titik (Vertex), sedangkan hubungan antara objek
dinyatakan dengan garis (Edge).
G = (V, E)
Dimana
G = Graph
V = Simpul atau Vertex, atau Node, atau Titik
E = Busur atau Edge, atau arc
15. Jenis-Jenis Operator Dalam Bahasa Pemograman Pascal
Ada beberapa jenis operator, yaitu :
1.Assignment Operator / Operator Penugasan
Assignment Operator (operator penugasan) adalah operator yang
menggunakan tanda sama dengan (=) untuk mengisi sebuah nilai dalam suatu
variabel.
16. 2.Arithmetic Operator / Operator Aritmatika
Arithmetic Operator (operator aritmatika) adalah operator yang digunakan untuk
melaksanakan operasi aritmatika.
Beberapa operator aritmatika antara lain:
* : untuk perkalian
+ : untuk penjumlahan
- : untuk pengurangan
/ : untuk pembagian
% : untuk sisa pembagian (modulus)
17.
18. 3.Logical Operator / Operator Logika / Boolean Operator
Operator Boolean atau Operator Logika adalah operator yang digunakan untuk
melakukan operasi logika yaitu operator yang menghasilkan nilai TRUE (benar)
atau FALSE (salah).
Bebarapa macam operator logika antara lain:
1. and : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
2. or : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE
3. xor : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE tetapi
bukan keduaduanya
bernilai TRUE
4. ! : mengasilkan nilai tidak TRUE
5. && : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
6. || : menghasilkan nilai TRUE jika salah satu operand bernailai TRUE
19.
20. 4.Comparison Operator / Operator Pembanding
Operator Pembanding adalah operator yang digunakan untuk membandingkan
dua buah nilai atau operand.
Operator perbandingan ini antara lain :
< : untuk kurang dari
> : untuk lebih dari
<= : untuk kurang dari atau sama dengan
>= : untuk lebiih dari atau sama dengan
== : untuk sama dengan
!= : untuk tidak sama dengan
<> : untuk tidak sama dengan