t456 list linierarrayir43bifb4if

35
Array (list linier) Teknik Informatika Universitas Muhammadiyah Malang 2011 Algoritma & Struktur Data

Upload: ezhar-savero-roman

Post on 26-Sep-2015

240 views

Category:

Documents


3 download

DESCRIPTION

ifni2b4fi42bfi42f

TRANSCRIPT

  • Array (list linier)Teknik InformatikaUniversitas Muhammadiyah Malang2011Algoritma & Struktur Data

  • Tujuan InstruksionalMahasiswa mampu :Memahami cara pengoperasian struktur data arrayMemahami kelebihan dan kekurangan struktur data arrayMengimplementasikan struktur data array kedalam sebuah algoritma

  • TopikBentuk dasar arrayDeklarasi arrayInisialisasi arrayPengaksesan element array

  • ArrayArray adalah object yang digunakan untuk menyimpan banyak data dengan tipe data yang sama.Tipe data dari array dapat berupa : tipe data primitif tipe data objek (reference)

  • Array2 bagian penting yang menyusun array :Index berupa bilangan bulat mulai dari 0-(n-1), digunakan untuk mengakses element.*n=jumlah element.Elementdigunakan untuk menyimpan data. Jenis data yang disimpan disesuaikan dengan tipe data yang diberikan ketika deklarasi array.

  • GambaranPenyimpanan data pada array :

    Nilai grade dari 6 mahasiswa yang disimpan pada array.Dari gambar diatas dapat dijabarkan sbb :Element 1 berisi data 65, ada pada index ke-0Element 2 berisi data 32, ada pada index ke-1Element 3 (data = ?, index = ?)Element 6 (data = ?, index = ?)

  • ArrayTerdapat 3 langkah untuk membuat array:Mendeklarasikan variabel arrayMemcreate array beserta ukurannyaMemberikan sebuah nilai pada setiap element array

  • (1) Deklarasi Variabel ArrayBentuk Syntax array dimensi satu :

    Contoh :int[] ints; nama array ints bertipe intdouble[] dubs; nama array dubs bertipe doubleDimension[] dims; nama array dims bertipe class Dimensionfloat[][] twoDee; nama array twoDee (2 dimensi array ) bertipe floatYang tidak legal :int [5] scores; pemberian array-size diawal deklarasi!

    Tipedata[] namaArray;

  • (2) Create ArrayKarena array adalah sebuah object, maka create array menggunakan operator new.Besar array (array-size) wajib ditentukan pada proses ini.Bentuk syntax :

    Contoh :int[] ints ; proses deklarasi variabel arrayints = new int[25] ; create array ints sebesar 25 elementnamaArray = new Tipedata[array-size];

  • Contoh laindouble[] dubs; dubs = new double[100]; create array dubs sebesar 100 elementDimension[] dims; dims = new Dimension[9]; create array dims sebesar 9 elementfloat[][] twoDee;twoDee = new float[5][5]; create array twoDee sebesar 5 baris dan 5 kolom*Pada saat array dibuat, isi array diinisialisasi dengan default value.

  • (3) Memberikan nilai pada elemen arrayPemberian nilai pada elemen array (inisialisasi array) menggunakan index.Ingat! array selalu diawali dari index ke-0.Jadi, jika besar array adalah n maka untuk mengakses elemen ke-n ada pada index ke n-1.Bentuk syntax :namaArray[index] = nilai;

  • ContohIsi dari array : nilai primitifint [] scores; int scores = new int[3];scores[0] = 75;scores[1] = 80;scores[2] = 100;Isi dari array : objectStudent students[] = new Student[3];students[0] = new Student();students[1] = new Student();students[2] = new Student();

  • Inisialisasi ArrayGabungan dari 3 langkahfloat[] diameters = {1.1f, 2.2f, 3.3f, 4.4f, 5.5f}Point[] markup = {new Point(1,5), new Point(3,3), new Point(2,3)} ;Untuk mengetahui besar dari array gunakan .length setelah nama array.long squares ;squares = new long[6000] ;for (int i=0 ; i
  • Pengaksesan ElemenMenggunakan variabel penampungx = namaArray[index];variabel x akan menampung data yang ada pada elemen sesuai index.2.Menggunakan System.out.print();mengakses sekaligus menampilkan data pada elemen sesuai index. Contoh : System.out.print(grade[0]);(Menampilkan data pada elemen dengan index ke-0)

  • Contoh program

  • Hasil running00000falsefalsefalsefalsefalsefalseFinished executing

  • Contoh:

  • Create dua dimensional arrayint[] [] myArray = new int [3] [];

  • Contoh program

  • Hasil runningLength pada Indeks ke-0 =3Length pada Indeks ke-1 =5Finished executing

  • Program

  • Hasil runningElemen pd Dimensi ke-1 = 2Elemen pd Dimensi ke-2 = 3Elemen pd Dimensi ke-3 = 4Finished executing

  • Hasil Running1 2 3 4 5 6 1 2 3 4 5 6 4 3 2 1

  • Copying Array// create a new array of proper length and data typeObject [] newArray = new Object [newLength]; // copy all elements from old array into new one System.arraycopy(element, 0, newArray, 0,element.length); // rename array element = newArray;

  • Latihan1. Diberikan matriks A sebagai berikut :1 0 0 00 1 0 00 0 1 00 0 0 1Perintah pokok yg digunakan pd pengisianmatriks A adalah ??

  • LatihanBuatlah sebuah array yang memenuhi spesifikasi yang ada pada tabel disamping.Petunjuk :Buatlah class Bank yang memiliki dua variabel array tsb.Berikan inisialisasi pada variabel antrian dengan angka terurut mulai dari 1. sedangkan inisialisasi variabel nasabah dengan obyek yg mengacu pada class Customer.Berikan nilai saldo pada tiap objek yang ada dengan memanggil method setSaldo() menggunakan nasabah[0].Lakukan pengaksesan untuk setiap elemen pada array antrian.Lakukan pengaksesan method getSaldo().

    Class Customer{double saldo;void setSaldo(double dana){saldo = saldo+dana;}double getSaldo(){return saldo;}}

    Variabel ArrayTipe dataBesar ArraynasabahCustomer3antrianint3

  • LatihanBuatlah sebuah array dua dimensi untuk menyimpan sebuah kata bahasa indonesia beserta kata padanan bahasa inggrisnya. petunjuk :Kata yg disimpan diberikan 5 kata.Element 1 digunakan untuk menyimpan kata bahasa indonesiaElement 2 digunakan untuk menyimpan kata bahasa inggrisCobalah mengakses kata bahasa inggris dari kata bahasa indonesia yang dipilih pleh user.

  • LatihanDiketahui L=(a,b,c,d). L adalah sebuah array linier list. Tentukan hasil yang didapatkan ketika dilakukan perintah berikut ini :isEmpty()size()get(0), get(2),get(6),get(-3)indexOf(a), indexOf(c), indexOf(q)remove(0), remove(2), remove(3)add(0,e), add(2,f), add(3,g), add(4,h), add(6,h), add(-3,h)

  • Daftar PustakaNana Ramadiyanti, Pemrograman Lanjut : Array, Pens-ITSSahni, Sartaj, Data Structures, Algorithms, and Applications in Java. McGraw-Hill International Editions. L.N. Harnaningrum, Struktur Data menggunakan Java, Graha ilmu, 2010Siswanto, Algoritma & Struktur Data Linier, Graha Ilmu, 2010

    arraycopy(sourceArray, sourceStart, destArray, destStart, numberOfElementsToCopy)When writing a general method to change the length of an array whose data type is any subclass of Object, we need to use the more complex new array creation statement used on page 160 of the text.