NGOMBE KOLOK, WADAHE KOCO

TUKU PERMEN, NING KOTA SOLO

MONGGO DIDELOK LAN DIWOCO

JOK LALI NGOMENT KARO DI FOLLOW

blogger upn

Kamis, 10 November 2011

Dasar Teori Array dan Fungsi Rekursif

ARRAY
Kita memiliki tiga variabel dengan tipe data int yang memiliki identifier yang berbeda untuk tiap variabel.
            int number1;
            int number2;
            int number3;
            number1 = 1;
            number2 = 2;
            number3 = 3;

Code di atas bukanlah contoh yang baik untuk memperlihatkan proses penginisialisasian dan penggunaan variabel, terutama jika variabel tersebut digunakan untuk tujuan yang sama.baik Java maupun bahasa pemrograman lain, memiliki kemampuan untuk menggunakan satu variabel yang dapat menyimpan sebuah data list, kemudian memanipulasinya dengan lebih efektif.
Tipe variabel inilah yang disebut sebagai array

 
Sebuah array akan menyimpan beberapa item data dengan tipe data yang sama di dalam sebuah blok memori yang berdekatan yang kemudian dibagai menjadi beberapa slot.  
Untuk mendeklarasikan array :
1.tulis tipe datanya,
2.diikuti dengan tanda kurung [],
3.serta diikuti oleh nama identifier.
            Contoh:
            int []ages;
atau
                        int ages[];
Setelah proses pendeklarasian, kita harus membuat array dan menentukan berapa panjangnya dengan sebuah pernyataan konstruktor.
            Instantiation
            Di Java, ini berarti pembuatan
            Konstruktor
Untuk meng-instantiate sebuah obyek, kita membutuhkan sebuah konstruktor.
Sebuah konstruktor merupakan sebuah method yang dipanggil untuk membuat object
            Kita akan membicarakan lagi mengenai instantiate obyek dan pembuatan konstruktor pada bagian selanjutnya.
Untuk meng-instantiate (atau membuat) sebuah array,
Tulislah new keyword,
Diikuti oleh tanda kurung [] yang berisi angka dari elemen yang Anda inginkan pada array tersebut.
Contoh,
                        //deklarasi
             int ages[]; 
           
            //instantiate object
            ages = new int[100];

atau, juga dapat ditulis,
                        //declare and instantiate object
            int ages[] = new int[100];

Anda juga dapat meng-instantiate sebuah array dengan cara menginisialisasinya secara langsung dengan data.
            Contoh,
                        int arr[] = {1, 2, 3, 4, 5};

Pernyataan ini mendeklarasikan dan meng-instantiate sebuah array dari integer dengan lima elemen (diinisialisasi dengan nilai 1, 2, 3, 4, dan 5).

//membuat sebuah array dari variabel boolean pada sebuah identifier
//hasil. Array ini berisi 4 elemen
//untuk nilai {true, false, true, false}

boolean results[] = { true, false, true, false };

//Membuat sebuah array yang terdiri dari penginisialisasian 4 variabel
//untuk nilai  {100, 90, 80, 75};

double []grades = {100, 90, 80, 75};

//Membuat sebuah array String dengan identifier days
//terdiri dari 7 elemen.

String days[] = { “Mon”, “Tue”, “Wed”, “Thu”, “Fri”, “Sat”, “Sun”};

Untuk mengakses sebuah elemen dalam array , atau mengakses sebagian elemen dari array , Anda menggunakan penomoran yang disebut sebagai index atau subscript
            Index atau Subscript
Diberikan kepada tiap anggota array, agar program dapat mengakses anggota dari array.

Dimulai dari nol dan kemudian akan terus bertambah sampai list value dari array tersebut berakhir.

FUNGSI REKURSIF
         Fungsi yang berisi definisi dirinya sendiri
         Fungsi yang memanggil dirinya sendiri
         Prosesnya terjadi secara berulang-ulang
         Yang perlu diperhatikan adalah “stopping role”
-          Plus – Minus
         +Karena program lebih singkat dan ada beberapa kasus yang lebih mudah menggunakan fungsi yang rekursif
         -Memakan memori yang lebih besar, karena setiap kali bagian dirinya dipanggil, dibutuhkan sejumlah ruang memori tambahan.
         -Mengorbankan efisiensi dan kecepatan
         -Problem: rekursi seringkali tidak bisa “berhenti” sehingga memori akan terpakai habis dan program bisa hang.
         -Program menjadi sulit dibaca Fibonacci
         Sepasang kelinci yang baru lahir (jantan dan betina) ditempatkan pada suatu pembiakan.  Setelah dua bulan pasangn kelinci tersebut melahirkan sepasang kelinci kembar (jantan dan betina).  Setiap pasangan kelinci yang lahir juga akan melahirkan sepasang kelinci juga setiap 2 bulan.  Berapa pasangan kelinci yang ada pada akhir bulan ke-12?
         Deret Fibonacci adalah suatu deret matematika yang berasal dari penjumlahan dua bilangan sebelumnya.
         1, 1, 2, 3, 5, 7, 12, 19, …
-          Bilangan Fibonacci
         Untuk N = 40, FN melakukan lebih dari 300 juta pemanggilan rekursif. F40 = 102.334.155
         Aturan: Jangan membiarkan ada duplikasi proses yang mengerjakan input yang sama pada pemanggilan rekursif yang berbeda. 
         Ide: simpan nilai fibonacci yang sudah dihitung dalam sebuah array.


2 komentar:

Unknown mengatakan...

memang ndewor anak satu ini

Didit Serva Andrianto mengatakan...

ok ok makasih

Posting Komentar