Aktivitas Sruktur Data
Struktur Data adalah cara penyimpanan dan pengorganisasian data-data pada memori komputer maupun file secara efektif sehingga dapat digunakan secara efisien, termasuk operasi-operasi di dalamnya.
Di dalam aktivitas struktur data ada dua aktivitas yang penting yaitu
1. Mendeskripsikan kumpulan obyek data yang sah sesuai dengan tipe data yang ada
2. Menunjukkan mekanisme kerja operasi-operasinya
Contoh: integer (-32768 s/d 32767) dan jenis operasi yang diperbolehkan adalah +, -, *, /, mod, ceil, floor, <, >, != dsb.
Jadi secara umum kita dapat menarik kesimpulah bahwa aktivitas sruktur data adalah pendeskripsian kumpulan obyek data yang sah sesuai dengan tipe data yang ada serta menjalankan mekanisme kerja oprasi-oprasi sehingga akan menghasilka suatu data yang dapat digunakan secara efisien.
Atau secara garis besar aktivitas struktur data = obyek data + operasi manipulasi data.
Hubungan Sruktur Data Dengan Algoritma
Algoritma adalah prosedur terbatas yang terdiri beberapa operasi menyelesaikan suatu masalah (Ibaraki)
Struktur data adalah cara pengaturan data agar bisa disimpan memory komputer
• Hubungan struktur data dengan algoritma adalah hubungannya sangat erat karena apabila Dengan pemilihan struktur data yang baik, maka problem yang kompleks dapat diselesaikan sehingga algoritma dapat digunakan secara efisien, operasi-operasi penting dapat dieksekusi dengan sumber daya yang lebih kecil, memori lebih kecil, dan waktu eksekusi yang lebih cepat.
Metode UDT dan ADT
ADT adalah definisi type dan sekumpulan oprasi dasar erhadap type tersebut.
• memperluas konsep UDT dengan menambahkan pengkapsulan atau enkapsulasi, berisi sifat-sifat dan operasi-operasi yang bisa dilakukan terhadap kelas tersebut.
• Contoh: class pada Java
• UDT adalah Berisi beberapa variabel yang bisa berbeda tipenya à masing-masing disebut elemen
• Mempunyai nama yang sama
• Mirip representasi sebuah object beserta properties-nya.
Contoh: struct MHS setidaknya punya elemen untuk NPM, Nama dan Alamat.
Perbedaan UDT dan ADT
• UDT dibuat oleh pemrogram atau orang yang menjalankan dan membuat program sedangkan ADT memperluas konsep UDT dengan menambahkan pengkapsulan atau enkapsulasi, berisi sifat-sifat dan operasi-operasi yang bisa dilakukan terhadap kelas tersebut.
Metode Array Satu Dimensi dan Dua Dimensi
Array Dimensi Satu
Array dimensi satu disebut juga dengan vector, adalah sebuah array yang terdiri dari sejumlah elemen data, dan poisis setiap elemen ditentukan oleh sebuah subskrib.
Setiap array harus dideklarasikan terlebih dahulu, hal ini digunakan untuk mengalokasikan ruang memori yang akan digunakan dan juga menentukan tipe data dari elemen
Array Dimensi Dua
Array dimensi dua, lebih dikenal dengan matriks atau tabel, adalah sekumpulan elemen yang sejenis, dan posisi setiap elemennya ditentukan oleh dua buah subskrib yaitu nomor baris dan nomor kolom
Contoh array dimensi satu
Contoh 1 : REM PROGARRAY6
DIM M(2,3)
M(1,1)=30: M(1,2)=50: M(1,3)=20
M(2,1)=10: M(2,2)=10: M(2,3)=10
PRINT M(1,1) +M(2,2)
PRINT M(2,3)
END
Output:
40
10
Contoh array dimensi dua
Contoh 1 : REM PROGARRAY1
DIM A(5)
LET A(1)=40 : A(2)=30 : A(3)=100 : A(4)=80 : A(5)=75
C = A(1) + A(2) + A(3) + A(4) + A(5)
PRINT A(1) , A(2) , A(3) , A(4) , A(5)
PRINT “HASIL JUMLAH = “; C
END
Output:
40 30 100 80 75
HASIL JUMLAH = 325
Metode – Metode Pengurutan Data
Bubble sort
• Metode sorting termudah
• Diberi nama “Bubble” karena proses pengurutan secara berangsur-angsur bergerak/berpindah ke posisinya yang tepat, seperti gelembung yang keluar dari sebuah gelas bersoda.
• Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya.
Array stack and queue
• Suatu susunan koleksi data dimana data dapat ditambahkan dan dihapus selalu dilakukan pada bagian akhir data, yang disebut dengan top of stack
• Stack bersifat LIFO (Last In First Out)
• “Benda yang terakhir masuk ke dalam stack akan menjadi yang pertama keluar dari stack
Sorting
Pengurutan data dalam struktur data sangat penting untuk data yang
beripe data numerik ataupun karakter.
- Pengurutan dapat dilakukan secara ascending (urut naik) dan descending
(urut turun)
- Pengurutan (Sorting) adalah proses menyusun kembali data yang
sebelumnya telah disusun dengan suatu pola tertentu, sehingga tersusun
secara teratur menurut aturan tertentu.
Single Linked List non Circular
• Single : artinya field pointer-nya hanya satu buah saja dan satu arah serta pada akhir node, pointernya menunjuk NULL
• Linked List : artinya node-node tersebut saling terhubung satu sama lain.
• Setiap node pada linked list mempunyai field yang berisi pointer ke node berikutnya, dan juga memiliki field yang berisi data.
• Node terakhir akan menunjuk ke NULL yang akan digunakan sebagai kondisi berhenti pada saat pembacaan isi linked list.
Single Linked List or Circular
adalah Single Linked List yang pointer nextnya menunjuk pada
dirinya sendiri. Jika Single Linked List tersebut terdiri dari beberapa node,
maka pointer next pada node terakhir akan menunjuk ke node
terdepannya.
Pointer dan fungtion
Pointer
• Pointer adalah suatu variabel penunjuk, berisi nilai yang menunjuk alamat suatu lokasi memori tertentu.
• Jadi pointer tidak berisi nilai data, melainkan berisi suatu alamat memori atau null jika tidak berisi data.
• Pointer yang tidak diinisialisasi disebut dangling pointer
• Lokasi memori tersebut bisa diwakili sebuah variabel atau dapat juga berupa nilai alamat memori secara langsung.
Fungtion
Fungsi/function adalah bagian dari program yang memiliki nama tertentu yang unik, digunakan untuk mengerjakan suatu pekerjaan tertentu, serta letaknya dipisahkan dari bagian program yang menggunakan/memanggil fungsi tersebut