Home » » Overview Struktur Data

Overview Struktur Data

I.    TUJUANINSTRUKSIONALKHUSUS (TIK)
Mahasiswa memahami representasi data dan dapat mendeklarasikan struktur data secara lengkap

II.    DASAR TEORI
1.1    Pengenalan Struktur Data
    Dalam istilah ilmu komputer, sebuah struktur data adalah cara penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga data tersebut dapat digunakan secara efisien.
    Dalam teknik pemrograman, struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu kolom yang tampak oleh pengguna (user) atau pun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna.Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record).Lebar kolom untuk data dapat berubah dan bervariasi.Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna, dan juga ada kolom yang lebarnya tetap.Dengan sifatnya ini, sebuah struktur data dapat diterapkan untuk pengolahan database (misalnya untuk keperluan data keuangan) atau untuk pengolah kata (word processor) yang kolomnya berubah secara dinamis.Contoh struktur data dapat dilihat pada berkas-berkas lembar-sebar (spreadsheet), pangkal-data (database), pengolahan kata, citra yang dipampat (dikompres), juga pemampatan berkas dengan teknik tertentu yang memanfaatkan struktur data.
1.2    Pengenalan Algoritma
    Dalam matematika dan komputasi, algoritma atau algoritme[1] merupakan kumpulan perintah untuk menyelesaikan suatu masalah.Perintah-perintah ini dapat diterjemahkan secara bertahap dari awal hingga akhir. Masalah tersebut dapat berupa apa saja, dengan catatan untuk setiap masalah, ada kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, dalam hal ini berbeda dengan heuristik. Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.
    Desain dan analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan performa dari suatu algoritma dalam menyelesaikan masalah, terlepas dari implementasi algoritma tersebut.Dalam cabang disiplin ini algoritma dipelajari secara abstrak, terlepas dari sistem komputer atau bahasa pemrograman yang digunakan. Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan kriteria yang sama.
    Kompleksitas dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah.Secara informal, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki kompleksitas yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi.
Contoh :
Contoh :
•    ? Menghitung Luas persegi
Input  :  sisi
Output  : sisi*sisi
Algoritma mencari luas persegi :
Contoh kasus :  sisi=5
Metode : 5*5= 25 
1.3    Review
    Sebelum kita melangkahke bab berikutnya ada baiknya untuk mengingat kembali apa yang kita ketahui tentang bahasa pemrograman java yang telah di tempuh sebelumnya. Makaperlu untuk mereview sekilas tentang beberapa struktur bahasa pemrograman java yang akan sering kita gunakan nanti pada saat kuliah praktikum struktur data. Perhatikan dengan seksama tiap-tiap bagian struktur bahasa pemrograman java berikut ini.
1.3.1    Tipe Data
•    String, yakni suatu variabel yang menampung data kumpulan huruf atau karakter. Cara pendeklarasiannya sebagai berikut.String nama_var]=”[value]”;
Contoh :String alamat=”Jl. Sumatra 45”
•    Integer, suatu variabel yang menangani tipe data bilangan bulat. Cara pendeklarasiannya sebagai berikut.int [nama_var]=[value];
Contoh :int bilangan=300;
•    Boolean, adalah tipe data yag paling sederhana. Tipe data ini hanya berisi dua nilai yakni true atau false. Tipe data ini sering digunakan untuk menyatakan suatu kondisi. Cara pendeklarasiannya sebagai berikut. boolean [nama_var]=[value];
Contoh :boolean lulus=true;
•    Array adalah suatu struktur data dalam bentuk deret data. Jadi array menyimpan suatu himpunan data yang tersusun dalam bentuk deretan data. Dalam java array direpresentasikan dalam suatu varibel yang bernama variabel array. Ada dua cara mendeklarasikan variabel array. Cara pertama adalah dengan memberikan value pada saat kita mendeklarasikan variabel array. Perhatikan struktur pendeklarasiannya sebagai berikut:
<tipe_data>[]<nama_var>={<value1>,<value2>};
Contoh :String []data={“Susan”,”Santi”,”Santo”};
Kode diatas berarti kita membuat suatu variabel array yang bernama “data” dengan tipe data string yang berisikan tiga buah data yakni Susan, Santi, dan Santo.
Cara yang kedua adalah dengan tanpa melakukan inisaialisasi(pemberian value awal) terlebih dahulu tetapi jika kita melakukan cara ini maka kita diharuskan untuk mengisikan panjang array. Perhatikan struktur berikut.
<tipe_data>[]<nama_var>=new <tipe_data>[<panjang_array>];
Contoh :int[]bilangan=new int[100];
kode diatas berarti kita membuat suatu variabel array yang bernama “bilangan” dengan tipe data integer dan dengan panjang data 100.
1.3.2    Struktur Kontrol
•    Struktur percabangan:dalam java salah satunya direpresentasikan dalam suatu struktur “IF” yang biasanya dikombinasikan dengan “ELSE” apabila proses memiliki lebih dari satu cabang. Perhatikan struktur if-else berikut.
If(<kondisi>){
<statement 1>
}else{
<statement 2>
}

Penjelasan.
Kondisi: berisi suatu operasi(biasanya perbandingan) yang memberikan suatu nilai boolean yakni true atau false.
Statement 1: adalah suatu statement atau baris program yang akan dieksekusi apabila kondisi memberikan nilai true.
Statement 2: satement atau baris program yang akan dieksekusi apabila kondisi memberikan nilai false.
Perlu ditekankan disini bahwa apabila suatu kondisi telah memberikan nilai true maka statement 1 akan dieksekusi dan statement 2 akan diabaikan. Begitu pula apabila kondisi memberikan nilai false maka statemen 2 yang akan dieksekusi sedangkan statement 1 akan diabaikan. Perhatikan cantoh penerapannya dalam suatu class java.

•    Struktur Perulangan :Dalam bahasa pemrograman java struktur perulangan biasanya direpresentasikan dengan menggunakan struktur “FOR”. Blok kode yang berada pada kalang/scope for inilah yang akan dilakukan eksekusi berulang kali sesuai dengan kondisi tertentu. Perhatikan struktur for berikut.
for(<inisialisasi>;<kondisi>;<update>){
<statement>;
}
Penjelasan
Inisialisasi : berisi proses pemberian nilai awal pada variabel yang digunakan sebagai kontrol perulangan(biasanya variabel integer) contoh: int i = 0
Kondisi : beiasanya berisi proses pembandingan nilai variabel kontrol dengan nilai tertentu. Kondisi ini akan memberikan nilai boolean yakni true atau false. Contoh: i < 100
Update : berisi proses update nilai variabel kontrol. Update variabel kontrol ini digunakan agar suatu perulangan akan berhenti pada suatu kondisi tertentu. Update variabel ini biasanya menggunakan operasi increment dan decrement. Contoh: i++

1.3.3    Pemrograman Berorientasi Objek
    Method adalah suatu mekanisme yang digunakan untuk memparsialkan atau membagi suatu kode program menjadi beberapa kode program dengan proses yang spesifik. Misalkan kode program yang digunakan untuk mencetak output dikumpulkan dalam suatu method yang bernama method cetak. Secara umum ada dua macam method yakni method setter dan method getter.
•    Method Setter :Sesuai dengan namanya, method ini memang biasanya digunakan untuk merubah/ memanipulasi suatu nilai atau properti class. Jika kita melakukan pemanggilan method jenis ini maka method ini hanya mengeksekusi baris kode yang ada pada method tersebut tanpa adanya nilai balik yang didapatkan pada proses pemanggilannya.
Struktur method setter adalah sebagai berikut.
<access modifier> void <nama_method>(<parameter>){
<baris kode>
}
Penjelasan
Access modifier: ada beberapa beberapa hak akses method yang dikenal java, tetapi untuk praktikum ini kita cukup menggunakan access modifier public agar method dapat diakses oleh objek yang bersangkutan di class yang lain.
Parameter : dapat berisi beberapa deklarasi variabel yang dipisahkan dengan tanda koma(,).
Contoh: public void cetak(String nama)

•    Method getter :Berbeda dengan method setter yang hanya bisa mengeksekusi baris kode yang ada di dalamnya, method getter selain mengeksekusi baris kodenya juga memberikan nilai balik(getting value) kepada pemanggilnya. Perhatikan struktur method getter berikut.
<access modifier><tipe_data><nama_method> (<parameter>){
<baris kode>
return<value>;
}
Perbedaan mendasar dari struktur method setter dan getter yang pertama adalah pada method getter menggunakan tipe data seperti int, String bahkan juga bisa menggunakan tipe data objek, sedangkan untuk method setter hanya menggunakan keyword void saja.Perbedaan yang kedua adalah pada method getter terdapat keyword return yang berfungsi untuk memberikan nilai balik pada pemanggil method ini.
•    Constructor adalah suatu method khusus yang akan dijalankan pada saat pembuatan suatu objek. Dapat dikatakan bahwa dengan konstruktor inilah kita melakukan inisialisasi atau pemberian nilai awal dari objek yang kita ciptakan dari class yang bersangkutan. Berikut adalah ciri-ciri dari constructor yang membedakan dengan method biasa.
a.    Nama constructor sama dengan nama class
b.    Constructor tidak memiliki return value
c.    Acces modifiernya public
Constructor tidak dapat dipanggil secara  langsung, namun harus dipanggil dengan menggunakan operator new pada pembentukan sebuah class.
Struktur dasar constructor:
public  <nama_class>(<parameter>){
<baris_kode>;
}






III.    ALAT DAN BAHAN
?    Modul praktikum
?    Komputer
?    Pen tinta biru

IV.    PELAKSANAAN PRAKTIKUM

V.    TUGAS
Merangkum BAB 1

VI.    PENYELESAIAN
1.4    Pengenalan Struktur Data
    struktur data adalah cara penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga data tersebut dapat digunakan secara efisien.
    struktur data berarti tata letak data yang berisi kolom-kolom data, baik yang tampak atau pun tidak tampak oleh pengguna.Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record).Lebar kolom untuk data dapat berubah dan bervariasi.berubah secara dinamis danada kolom yang lebarnya tetap. diterapkan untuk pengolahan database.
1.5    Pengenalan Algoritma
    Algoritmamerupakan kumpulan perintah untuk menyelesaikan suatu masalah, dengan catatan ada kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, berbeda dengan heuristik. Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.
    Desain dan analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan performa dari suatu algoritma dalam menyelesaikan masalah, dipelajari secara abstrak, yang berbeda dapat diterapkan pada suatu masalah dengan kriteria yang sama.
    Kompleksitas dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah.dapat menyelesaikan dalam waktu yang singkat memiliki kompleksitas yang rendah, sedangkan yang waktu lama mempunyai kompleksitas yang tinggi.
1.6    Review
    bagian struktur bahasa pemrograman java.
1.3.1    Tipe Data
•    String, yakni suatu variabel yang menampung data kumpulan huruf atau karakter.
String nama_var]=”[value]”;
•    Integer, suatu variabel yang menangani tipe data bilangan bulat.
int [nama_var]=[value];
•    Boolean, adalah tipe data yag paling sederhana. yakni true atau false.untuk menyatakan suatu kondisi.
boolean [nama_var]=[value];
•    Array adalah suatu struktur data dalam bentuk deret data. direpresentasikan dalam suatu varibel yang bernama variabel array. Ada dua cara,
Cara pertama adalah dengan memberikan value pada saat kita mendeklarasikan variabel array.
<tipe_data>[]<nama_var>={<value1>,<value2>};
Cara yang kedua adalah dengan tanpa melakukan inisaialisasidiharuskan untuk mengisikan panjang array.Perhatikan struktur berikut.
<tipe_data>[]<nama_var>=new <tipe_data>[<panjang_array>];
1.3.2    Struktur Kontrol
•    Struktur percabangan: salah satunya direpresentasikan dalam suatu struktur “IF” dikombinasikan dengan “ELSE” .
If(<kondisi>){
<statement 1>
}else{
<statement 2>
}
•    Struktur Perulangan :direpresentasikan dengan menggunakan struktur “FOR”.
for(<inisialisasi>;<kondisi>;<update>){
<statement>;
}
1.3.3    Pemrograman Berorientasi Objek
    Method adalah suatu mekanisme yang digunakan untuk memparsialkan atau membagi suatu kode program menjadi beberapa kode program dengan proses yang spesifik.
•    Method Setter : digunakan untuk merubah/ memanipulasi suatu nilai atau properti class.
<access modifier> void <nama_method>(<parameter>){
<baris kode>
}
•    Method getter : mengeksekusi baris kodenya juga memberikan nilai balik(getting value) kepada pemanggilnya.
<access modifier><tipe_data><nama_method> (<parameter>){
<baris kode>
return<value>;
}
Perbedaan mendasar dari struktur method setter dan getter yang pertama adalah pada method getter menggunakan tipe data seperti int, String bahkan juga bisa menggunakan tipe data objek, sedangkan untuk method setter hanya menggunakan keyword void saja.
Perbedaan yang kedua adalah pada method getter terdapat keyword return yang berfungsi untuk memberikan nilai balik pada pemanggil method ini.
•    Constructor adalah suatu method khusus yang akan dijalankan pada saat pembuatan suatu objek.
ciri-ciri dari constructor yang membedakan dengan method biasa.
d.    Nama constructor sama dengan nama class
e.    Constructor tidak memiliki return value
f.    Acces modifiernya public
Constructor harus dipanggil dengan menggunakan operator new pada pembentukan sebuah class.
Struktur dasar constructor:
public  <nama_class>(<parameter>){
<baris_kode>;
}

0 Komentar Sahabat:

Post a Comment

Jadilah yang pertama...

Facebook

 
Support : Copyright © 2013. Mohammad Ramli - All Rights Reserved
Proudly powered by Blogger