Wednesday, February 26, 2014

Pointer, Array and Introduction to Data Structure

Pointer (penunjuk) ->

pointer adalah tipe data yang nilainya berisi nilai dari tempat yang lain dalam memori komputer dengan menunjuk alamatnya karena dia memang digunakan sebagai penunjuk.


operator yang digunakan dalam pointer :

& (tanda dan) = untuk menunjuk alamat
* (tanda bintang atau kali) = untuk menunjuk isi

contoh dari penggunaan pointer : 


        int a;

        int *b;
        b = &a;
        *b = 5;
maka disini nilai a menjadi 5.

Array []

array merupakan kumpulan elemen data yang sama karena elemen data tersebut harus memiliki tipe data yang sama (homogen). 
index array dimulai dari 0. contohnya : array[15] maka index akan dimulai dari 0 - 14, sedangkan pada 15 akan diisi "null string".

array 1 dimensi :

array 1 dimensi seperti kotak memanjang.
contoh :

        int array[4] = { 0, 1, 2, 3 };


array 2 dimensi :

array 2 dimensi seperti kotak yang memiliki baris dan kolom.
contoh :

        int x[3][4] = { {1, 2, 3, 4},

                              {5, 6, 7, 8},
                              {9, 10, 11, 12}
                           };

array multidimensi :

array multidimensi merupakan array yang memiliki ruang - ruang yang tidak terbatas dimensinya sesuai keinginan user.
contoh :


        int x[4][3][5] = {{{1, 2, 3}, {0, 4, 3, 4}, {1, 2}},
                               {{9, 7, 5}, {5, 7, 2}, {9}},       
                               {{3, 3, 5}, {2, 8, 9, 9}, {1, 2, 1}},
                               {{0}, {1}, {0, 1, 9}}
                                };

cara memasukkan nilai kedalam array :

- inisialisasi
- inputan user
- memberi nilai pada elemen

operasi yang dapat dilakukan pada array:

•Traversal
•Insertion
•Searching
•Deletion
•Merging
•Sorting

bedanya array dengan struct adalah array harus homogen, sedangkan struct heterogen.
contoh struct :

        struct ttl {

char tempat[100];
int tanggal[5];
char bulan[20];
int tahun[5];
};

struct identitas {

char nama[100];
char alamat[100];
int umur[10];
struct ttl a [100];
};
pada struct tersebut terdapat struct dalam struct dan untuk mengakses struct menggunakan . (dot / titik).

Struktur Data

struktur data merupakan susunan/pengaturan data, baik dimemori komputer atau penyimpanan disk.
contoh dari beberapa tipe struktur data:

– Arrays

array seperti yang sudah dijelaskan diatas.

– Linked lists

linked list merupakan struktur data yang dinamis dimana elemennya dapat ditambah atau dihapus kapan saja karena dijalankan saat run-time, sedangkan array dijalankan pada saat compile-time.
setiap element disebut node (titik).
keuntungan dari linked list adalah lebih menghemat memori karena elemen tersedia sesuai kebutuhan yang ingin dipakai saja.

– Queues

queue merupakan elemen yang seperti antrian (FIFO = First In First Out). jadi dimana yang duluan mengantri maka akan selesai/keluar lebih dulu.

– Stacks

stacks bisa dibilang array linear karena stacks berupa tumpukan (FILO = First In Last Out).

– Binary trees

binary tree berbentuk seperti pohon yang memliki anak/cabang kebawah dan setiap cabang dihubungkan oleh titik.
setiap titik memiliki left pointer, right pointer dan elemen data.

Tipe data

tipe data adalah kumpulan objek dan operasi yang dapat dilakukan pada objek tersebut.
contohnya pada int, objeknya adalah 1, 2, 3, 4 dst. maka operasi yang dapat dilakukan pada objek tersebut adalah +, -, /, *, dll.
jika tipe datanya adalah char, maka objeknya seperti 'A', 'B', atau array of char maka objeknya "qwertyuiop", dll. operasi yang dapat dilakukan pada objek tersebut adalah strcmp, strcpy, dll yang terdapat dalam library <string.h>.

Tipe data abstrak

         data yang disusun sedemikian rupa sehingga spesifikasi objek dan spesifikasi operasi pada objek dipisahkan dari representasi dari objek dan pelaksanaan operasi.



www.binus.ac.id


www.skyconnectiva.com