Selasa, 20 Februari 2018

1- array and linked list - 2101656755 - Wantika Aprilia Wangke.

Sesi pertama pada pertemuan pertama ini kami membahas tentang konsep dasar struktur data yang akan sering digunakan dalam software engineering dan programming practices, konsep array, structure, stack, queue, graph, and trees.
Sub topics:
1.     Array Review
2.     Pointer Review
3.     Types of Data Structures
4.     Abstract Data Type
Berikut adalah penjelasan tentng sub topics yg ada::
1.  Array
Array adalah kumpulan dari data yang memiliki tipe data yang sama (homogenous). Untuk pemogramman c/c++ indeks array selalu bertipe integer yang dihitung dari angka nol [0]. Untuk mendeklarasikan array digunakan tanda [] (bracket). Pada Array kita harus memesan tempat terlebih dahulu maka tempat yang sudah kita pesan tidak bisa ditambah atau dikurangi lagi. Array di bagi menjadi beberapa macam antara lain:
·        Array Satu Dimensi
Pada dimensi ini variabel array hanya berisi satu dimemensi saja. Pendeklarasian array satu dimensi delakukan dalam benuk :
Tipe namaArray [];
Atau
Tipe [] namaArray;

Syntax:
Type name[size];
                        Size N ber index 0 to N-1.
           
Contoh :
Int arr[3] = {1,2,3}  // dimana indeks ke-0 sampai indeks ke-2 secara berurutan adalah 1,2,3.

·        Array dua Dimensi
Array dua dimemnsi merupakan array dari array, artinya terdapat sebuah array yang setiap elemen nya juga betipe array. Cara mendeklarasikan array dua dimensi dengan :

tipe namaArray [ ][ ];
atau
tipe  [ ][ ] namaArray;

Syntax:
      type name[size1][size2];

contoh :
 int array[1][2];
 indeks pertama dari array rangednya dari 0 sampai size1-1
 indeks kedua dari array rangednya dari 0 sampa size2-1

·        Array Multi Dimensi
Array multidimensi adalah suatu array yang mempunyai array lebih dari dua. Bentuk pendeklarasian array sama saja dengan array dimensi satu maupun array dimensi dua:

Tipe_data nama_Array[size1][size2]…[sizeN];

            Dalam Array multidimentional kita dapat membuat array hingga mencapai maksimal 256 dimana banyaknya tergantung pada compiler.

Operasi yang terdapat dalam Array:
1. Tranversal   : mencetak/mengolah semua elemen satu persatu
2. Insertion     : menambah sebuah elemen pada index.
3. Searching    : mencari suatu elemen array dengan menggunakan index atau nilai yang diberikan
4. Deletion      : menghapus sebuah elemen pada index tertentu
5. Merging      : penggabungan beberapa elemen
6. Sorting        : Menyortir

2.  Pointer
pointer adalah suatu data type dimana variabel nya menyimpan alamat dari variabel lain dan menyimpan nya di memory komputer sifatnya menunjuk pada alamat memori lain.

Dua operator yang paling penting dalam pointer yaitu;
·        &  (Aserisk)             menyimpan/mengambil alamat dari variabel
·        *   (Ampersand)      mengambil isi dari variabel nya

Cara pendeklarasian pointer:
Data_type*pointer_name;
Atau
Int x = 1;
Int *px = &x; 
// maka isi dari var px adalah alamat dari var x, dan var *px adalah 1.

Double pointer, example :
int x;
int **px;

Dari penjelasan diatas kita dapat mengambil kesimpulan perbedaan dari single pointer dan double pointer yaitu double pointer dapat digunakan untuk mengambil data dari variabel pointer yang lain sedangkan single pointer itu mengambil data variabel langsung dari induknya.


3.  Data Structures
Data structures adalah cara menyimpan atau merepresentasikan data didalam komputer agar bisa dipakai secar efisien dan bersifat dinamis. Disebut juga sebagai jenis data kompleks atau data aggregates terdapat beberapa struktur data:
1.     Array
Kumpulan beberapa elemen sejenis yang memiliki tipe data yang sama, nilai nya terbatas dan tidak dapat dirubah lagi.

2.     Linked List
Adalah struktur data linier yang disebut nodes, diamana setiap mode akan menunjukkan pada node lain melalui sebuah pointer. Linked list dibentuk secara dinamik. Pada saat awal program dijalankan belum ada data.
Linked list memiliki 3 jenis yaitu:
Single link list.
Doube link list.
Mutiple link list.


3.     Queues
Queues adalah sistem data dimana memakai system data antrian dimana memiliki sifat FIFO “First In, First Out” dimana bari pertama disebut “front” dan baris paling belakang disebut “rear” . Dapat kita ambil contoh pada antrian orang mengambil uang di ATM dll. Jika memakai array diawal maka tidak dapat balik lagi ke awal.


4.     Stacks
Stuck memiliki sistem data dimana memakai system semacam tumpukan. Dimana struck memiliki sifat FILO (First In Last Out)  atau LIFO (Last In First Out). Kita dapat mengambil contoh pada tumpukan bola tenis yang berada pada dalam tabung.



5.     Binary Trees
Adalah suatu pohon struktur data dimana setiap simpul memiliki paling  banyak dua cabang, cabang tersebut dinamakan pointer kiri dan pointer kanan. Binary trees banyak di pakai di multi level, database, dan lainnya.


6.     Hash Table
Hash dulu dianggap tidak terlalu penting namun di zaman sekarang hash table banyak di pelajari oleh banyak orang dan sering digunakan.


4.  Abstract Data Type (ADT)

Abstract Data Type (ADT) adalah tipe data yang disusun sedemikian rupa sehingga spesifikasi objek dan spesifikasi operasi pada objek dipisahkan dari representasi objek dan pelaksanaan operasi. Jadi ini adalah sebuah tools untuk menghindari pemograman yang kompleks dengan cara penyederhanaan suatu program. Representasi, operasi dan tipe objek didefinisikan dalam single unit

C / C ++ memiliki konsep yang disebut class dan struct yang membantu programmer dalam mengimplementasikan tipe data abstrak.


Pada sesi 2 terdapat pembicara tamu yaitu bapak Samuel Theodorus sebagai Presiden Director dari sebuah perusahaan yang bernaung dalam bidang digital marketing yang sudah banyak melakukan relasi antara banyak perusahaan , yaitu PT. Elven Digital. Beliau menjelaskan tentang SEO dan perkembangan digital marketing di indonesia. Berikut ini merupakan beberapa materi yang di jelas kan oleh bapak Samuel.

SEO (Search Engine Optimazition)
SEO adalah sebuah usaha pengomtimalisasi website untuk mesin pencarian agar mendapatkan peringkat yang lebih baik di hasil pencarian.

Jenis SEO yaitu:
1.     On page SEO
2.     Off page SEO

Yang perlu dipelajari dari seo adalah pengoptimalan halaman website, riset kata kunci (keyword research), menganalisa kompeti, membuat konten yang teroptimalisasi, membangun populasi, link, dan reputasi, serta melakukan audit terhadap performa SEO.


            Sekian rangkuman pertemuan pertama Data Structure oleh Wantika Aprilia Wangke              2101656755.
Terima kasih...