Modul 1 Arrays
Modul 1 Arrays
ARRAYS
Learning outcomes:
1. Mampu menjelaskan konsep dan implementasi array pada program
2. Mampu melakukan manipulasi data array: menambahkan item,
melakukan pencarian, dan menghapus item pada array
3. Mampu mengimplementasikan ordered array pada program.
4. Mampu mengimplementasikan binary search pada ordered array.
5. Mampu menyimpan dan manipulasi objek pada array.
IDENTITAS PRAKTIKAN
NIM :
Nama Lengkap : Kelas/ Hari/ Jam
: / / Nomor komputer :
Nama Asisten
:
Tugas Praktikum
A. PENDAHULUAN
1. Format penulisan code yang digunakan untuk mendeklarasikan sebuah array adalah:
TipeData namaVariable[ ] = new TipeData[panjang/ukuranArray];
Sedangkan format penulisan code untuk menambahkan item pada array yang telah
dideklarasikan adalah:
namaVariable[index]= value;
Tulis dan jalankan listing program berikut:
public class classArray {
}
}
Pada listing program tersebut, ukuran array yang dideklarasikan adalah 10. Insert
item dilakukan hingga index ke-4, artinya hanya terdapat 5 item.
Tuliskan output program tersebut dan jelaskan kenapa demikian!
jawaban
jawaban
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 2
Praktikum 1 |
Apakah item yang awal dimasukkan (pada listing no 1) masih tersimpan didalam
array? Jelaskan kenapa demikian?
jawaban
nElemen = 6;
}
}
Jalankan dan tuliskan penjelasan dari listing yang telah Anda lengkapi!
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 3
Praktikum 1 |
jawaban
5. Berikut ini adalah listing program array yang dituliskan dalam bentuk object
oriented programming. Class HighArray memiliki method untuk manipulasi array,
yaitu insert, find/search, dan delete serta method display untuk menampilkan isi
array. Method dalam class HighArray tersebut dipanggil dan dijalankan pada class
HighArrayApp.
Pahami listing berikut dengan menulis dan menjalankannya, kemudian tuliskan
penjelasan tiap barisnya!
class HighArray { Awal sebuah kelas bernama HighArray
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 4
Praktikum 1 |
int i;
for (i = 0; i < nElemen; i++) {
if (value == arr[i]) {
break;
}
}
if (i == nElemen) {
return false;
} else {
for (int j = i; j < nElemen; j++) {
arr[j] = arr[j + 1];
}
nElemen--;
return true;
}
}
arr.insert(70);
arr.insert(80);
arr.insert(75);
arr.insert(55);
arr.insert(85);
arr.insert(25);
arr.insert(30);
arr.insert(00);
arr.insert(90);
arr.insert(40)
arr.display();
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 5
Praktikum 1 |
arr.delete(00);
arr.delete(80);
arr.delete(55);
arr.display();
}
}
Output program tersebut adalah….
jawaban
6. Tambahkan sebuah method size pada class HighArray yang mempu mengembalikan
nilai jumlah elemen array. Panggil method tersebut pada class HighArrayApp untuk
menampilkan jumlah elemen.
Tulis code dan penjelasannya!
jawaban
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 6
Praktikum 1 |
B. PRAKTIKUM
1. Pada listing nomer 5 (tugas pendahuluan), method insert digunakan untuk
menambahkan item pada cell yang belum terisi tanpa memberhatikan value item
yang ditambahkan sehingga elemen pada array disimpan secara tidak berurutan
(unordered).
Agar item dapat disimpan pada urutan yang sesuai dengan value-nya maka perlu
dilakukan pencarian posisi cell yang tepat bagi item yang akan dimasukkan dengan
cara membandingkan tiap item pada cell dengan item yang akan dimasukkan, yaitu
pencarian secara linier. Setelah cell tepat ditemukan, langkah selanjutnya adalah
menyiapkan cell tersebut untuk diisi jika sudah ada item yang tersimpan pada cell
tersebut. Hal ini bisa dilakukan dengan cara menggeser item yang memiliki value
lebih besar dari item yang akan dimasukkan, dengan demikian terdapat cell kosong
untuk diisi dengan item baru. Langkah-langkah insert item pada ordered array
ditunjukkan pada Gambar 1.1 berikut ini.
77
15 30 45 53 79 81
66 insert
15 30 45 53 77 79 81
15 30 45 53 66 77 79 81
Ordered Array
Tuliskan listing untuk method insert untuk menyimpan elemen array secara
berurutan (ordered)!
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 7
Praktikum 1 |
batasBawah batasAtas
batasBawahbatasAtas batasBawahbatasAtas
Range yang baru jika Key < arr[curIn] Range yang baru jika Key > arr[curIn]
3. Storing object
Item data pada real world tidak direpresentasikan dalam bentuk data primitive tapi
berupa record yang merupakan kombinasi dari beberapa field. Misalkan untuk
record personal, kita dapat menyimpan nama, tempat tanggal lahir, nomer telpon,
email, dsb. Untuk data mahasiswa, kita dapat menyimpan nim, nama, jurusan, asal,
dsb. Dalam java, record data biasanya direpresentasikan dengan sebuah class
object.
Berikut ini listing yang menunjukkan implementasi storing object. Terdapat tiga
class, yaitu class “Mahasiswa”, “DataArray”, dan “DataArrayApp”. Record yang
disimpan adalah data mahasiswa yang terdiri dari field nim, nama, dan asal. Record
mahasiswa ini direpresentasikan dalam sebuah class object dengan nama
“Mahasiswa”.
Tulis dan pahamilah listing program untuk menyimpan object berikut ini.
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 8
Praktikum 1 |
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 9
Praktikum 1 |
Output:
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 1
Praktikum 1 |
C. KESIMPULAN
Kesimpulan yang diperoleh dari pembahasan praktikum kali ini adalah:
1. Tentang unordered arrays dan ordered arrays
Praktikum Struktur Data, Jurusan Teknik Informatika, UIN Maulana Malik Ibrahim
Malang 1