Selasa, 29 Maret 2016

Pertemuan Keempat Tree, Binary Tree, dan Expression Tree

TREE

http://img.sparknotes.com/figures/B/becc4efefde067dce51a326cca23c5f0/treedefinition.gif

Apakah itu tree? Pohon? Didalam Data Structure tree adalah banyak node yang memiliki hubungan satu dan lainnya tetapi hubungan tersebut adalah hubungan suatu node didalam node lainnya dimana node tersebut memiliki kepala atau yang dapat disebut dengan root. Diantara 2 node terdapat sebuah penghubung berupa sebuah panah atau yang dapat disebut dengan edge. Selain itu juga terdapat node paling bawah atau node yang tidak memiliki node lain dibawahnya yang dapat disebut sebagai leaf.
Selain tree terdapat juga Binary Tree. 





BINARY TREE

Binary Tree adalah tree yang dimana suatu node hanya memiliki maksimal 2 node dibawahnya atau 
dapat disebut node tersebut hanya memiliki maksimal 2 anak. 2 anak ini dapat disebut juga anak kiri dan anak kanan. Binary tree memiliki beberapa tipe yaitu :

  • Rooted binary tree
  • Full Binary Tree
  • Perfect Binary Tree
  • Complete Binary Tree
  • Infinite Complete Binary Tree
  • Balanced Binary Tree
  • Degenerated Binary Tree
Pembagian ini dibagi sesuai dengan hubungan dari node orang tua dan node anaknya.
 

 

Senin, 14 Maret 2016

Pertemuan Kedua Pengajar Tamu

BIG DATA

Apakah itu big data? Big data adalah sebuah istilah dalam sebuah set data yang sangat besar atau kompleks dimana hal tersebut membuat pemroses data traditional tidak memadai. Big data biasanya juga termasuk data set dengan ukuran yang diluar kemampuan software untuk meng-capture, curate, managee, dan memproses diantara waktu yang dapat di tolerir.

RASPBERRY PI

Raspberry pi adalah sebuah single board circuit yang dimodifikasi sedemikian rupa sehingga mudah untuk dibawa oleh penggunanya karena ukurannya sangat kecil dan hanya sebesar kartu identitas penduduk atau kartu kredit. Walaupun kecil raspberry pi dapat digunakan untuk berbagai macam hal seperti gaming, spreadsheet, dan juga memutar video dengan quality yang tinggi. Didalam pengembangannya sudah terbuat 3 tipe raspberry pi yaitu Raspberry pi model A, Raspberry pi model B v1, dan juga Raspberry pi model B v2.

Selasa, 01 Maret 2016

Pertemuan Pertama Data Struct

 ARRAY & POINTER
Di dalam beberapa bahasa pemrograman seperti C, banyak digunakan Array dan Pointer. Hal ini banyak digunakan untuk mempermudah coding yang dilakukan oleh seorang programmer. Akan tetapi, apakah sebenarnya array dan pointer?

Array adalah sebuah tempat penyimpanan banyak data dimana semua data yang terdapat dalam array itu memiliki hanya satu tipe data. Cara penyimanan array adalah "nama_array[i],nama_array[i+1]", nama_array adalah nama yang diberikan oleh programmer kepada array tersebut dan i adalah nomor index dimana array pertama di cetak. Lalu apakah guna array? Guna array dalam coding adalah mempermudah penyimpanan data dan juga mempermudah modifikasi terhadap data yang sudah disimpan tersebut.

Contoh :

Tidak menggunakan array
int absen_1=10;
int absen_2=20;
int absen_3=30;

Menggunakan array
int absen[3]={10,20,30};

Array tidak hanya memiliki satu buah macam. Selain array diatas ada juga array yang disebut sebagai array 2 dimensi. Array ini digunakan pada saat akan dibentuk sebuah tabel dan tabel tersebut dapat dimodifikasi oleh pengguna atau programmer.

Pointer adalah sebuah variabel dimana variabel tersebut menunjuk kepada "alamat" variabel lain. jika kita ingin mendapatkan sebuah alamat dari suatu variabel, operator yang di gunakan adalah "&". Alamat tersebut akan disimpan ke dalam variabel yang bertipe pointer. Untuk mendeklarasikan variable sebagai pointer kita menambahkan tanda "*" di depan nama variabel. Pointer dapat digunakan pada saat programmer ingin men-copy nilai dari suatu variabel tetapi tidak mengubah variabel tersebut.

Contoh :

int *number_1;
int  number_2;

number_2 = &number_1;

LINKED LIST

Apakah itu linked list? Linked list adalah struktur data yang terdiri dari urutan record data dimana setiap record memiliki field yang menyimpan alamat dari record selanjutnya (berutan). Didalam linked list dikenal 2 buah bagian yang menunjukan bahwa hal tersebut adalah linked list. 2 buah bagian itu adalah Head dan Tail. Head adalah elemen yang ada di "start" dari sebuah linked list sedangkan Tail adalah elemen yang ada di "akhir" atau "ujung" dari sebuah linked list.
Linked list dapat dibagi menjadi 4, yaitu:

Single Linked List

Single Linked List adalah linked list dimana suatu sebuah linked list hanya menunjuk kepada 1 buah node(rantai).








Double Linked List

Double Linked list adalah linked list dimana sebuah linked list menunjuk kepada 2 buah node(rantai) atau dapat terlihat seperti 2 buah linked list yang memiliki penunjuk yang berbeda arah dan digabung.







Circular Linked List

Circular Linked List adalah linked list dimana sebuah linked list mengulang kembali ke "Head" setelah 1 proses mencapai ke "Tail". Dalam pemrograman hal ini mirip seperti looping yang mengulang setelah suatu proses selesai dijalankan.

Circular Single Linked List
Circular Double Linked List


Multiple Linked List

Multiple Linked List adalah linked list dimana sebuah linked list menunjuk kepada banyak node(rantai).