Pertemuan 1 : Array, Pointer, and Introduction to Data Structure - 2101632225 - Hendy

Data Structure adalah suatu cara untuk menyimpan dan mengatur data di komputer sehingga bisa diakses dan dimodifikasi secara efisien. Dengan demikian, Data Structure adalah kumpulan nilai data, hubungan antar mereka, dan fungsi atau operasi yang bisa diterapkan pada data.


Array, Pointer, and Data Structure

Array

Array merupakan kumpulan dari data homogen yang mempunyai index atau kunci untuk setiap contentnya. Array bersifat homogen yaitu mempunyai tipe data yang sama (int / float / double atau tipe data lainnya). Index pada array dimulai dari 0 hingga seterusnya seperti contoh dibawah ini.

Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan subscript.

int maks[5] = {60, 22, 21, 50, 47};
index ke-0 atau maks[0] = 60
index ke-1 atau maks[1] = 22
index ke-2 atau maks[2] = 21
index ke-3 atau maks[3] = 50
index ke-4 atau maks[4] = 47


Array dibagi menjadi dua yaitu :

1. Array dua dimensi (Two Dimensional Array)

int angka[0][2] = 3;
Artinya, pada baris ke-0 dan kolom ke-2 mempunyai nilai 3

2. Array multi dimensi (Multi Dimensional Array)

int angka[0][2][1][5][6] = 6;
Multi dimensional array tidak terbatas dan tergantung kebutuhan programmer untuk memenuhi kebutuhannya dan juga tergantung dengan memori yang dipunya



Cara menyimpan nilai array ada tiga yaitu :

1. Inisialisasi elemen-elemennya (Initialize the elements)

int angka[3] = {22, 45, 66};
Artinya, pertama kita bisa memberikan nilai secara langsung untuk setiap elemennya

2. Memasukkan nilai untuk para elemennya (Input values for the elements)

int i, angka[5];
for(int i=0; i<5; i++){
scanf("%d",&angka[i]);}

Artinya, kita bisa memasukkan nilai untuk setiap elemennya dengan menggunakan looping

3. Menetapkan nilai untuk elemen (Assign values for the elements)

int i, angka1[5], angka2[5];
for(int i=0; i<5; i++){
angka2[i] = angka1[i];}

Misalnya pada angka1[0] diberi nilai 4 maka nilai tersebut akan dipindahkan ke angka2[0] sehingga mempunyai nilai 4 sehingga angka1[0] tidak memiliki nilai



Pointer

Pointer adalah variabel yang berisi suatu alamat memori sebagai nilainya dengan menunjuk pada alamat suatu variabel lainnya dan berbeda dengan variabel biasa yang hanya berisi suatu nilai tertentu.

Operator yang digunakan pada pointer :
& = mengambil alamat
* = mengambil isi atau nilai

int *ptr;
int a = 5;
ptr = &a;
printf("%d",ptr); [Akan menampilkan alamat variabel a]
printf("%d",*ptr); [Akan menampilkan isi atau nilai dari alamat variabel a yaitu 5]

Pointer tidak memiliki batasan yaitu tergantung dengan kebutuhan programmer dan juga memori yang dipunya. Misalnya *p berarti single pointer lalu **p berarti double pointer dan seterusnya


Data Structure

Data Structure adalah suatu cara untuk menyimpan dan mengatur data di komputer sehingga bisa diakses dan dimodifikasi secara efisien. Dengan demikian, Data Structure adalah kumpulan nilai data, hubungan antar mereka, dan fungsi atau operasi yang bisa diterapkan pada data.

Data Structure terdiri dari :
  1. Array
  2. Linked lists
  3. Queues
  4. Stacks
  5. Binary trees
  6. Hash tables

Array

Ciri-ciri Array yaitu :
  1. Nilai Terbatas
  2. Homogen (Tipe data sama)
  3. Nilai suatu variabel telah ditentukan sebelumnya jadi tidak bisa berubah pada saat proses maupun pada akhirnya

Linked Lists

Kategori dari sistem data yang alokasi memorinya dinamis yang mana elemennya dapat ditambahkan atau dihapus dari manapun.

Queues

Elemen yang dimasukkan terlebih dahulu maka akan diselesaikan dahulu sama seperti antrian yaitu siapa yang masuk terlebih dahulu maka selesai dahulu (First In, First Out) atau sebaliknya (Last In, Last Out).

Stacks

Elemen yang dimasukkan terlebih dahulu akan selesai belakangan seperti sama seperti tumpukan (First In, Last Out) atau sebaliknya (Last In, First Out).

Binary Trees

Elemen dapat disusun berdasarkan tree atau pohon. Koleksi dari element disebut nodes yang mempunyai pointer kiri dan pointer kanan dan elemen data sehingga suatu elemen memiliki hubungan dengan elemen lainnya.


Abstract Data Type (ADT)

ADT adalah suatu tipe data yang dibuat oleh programmer sendiri yang memiliki suatu nama tertentu. Struct merupakan ADT (Abstract Data Type) karena struct dapat memiliki variabel-variabel yang bertipe data sama atau berbeda (bersifat heterogen). Struct adalah tipe data bentukan yang berisi kumpulan variabel-variabel yang bernaung dalam satu nama yang sama.

struct data{
char nama[100];
int umur;
}mahasiswa[10];
Terdapat 10 data mahasiswa yang masing-masing mahasiswa terdiri dari nama dan umur


Terima kasih sudah membaca post ini yang merupakan rangkuman pembelajaran saya pada pertemuan pertama belajar mengenai Data Structure. Semoga informasi ini bermanfaat bagi kalian semua. Terima Kasih.

LIHAT JUGA : Pertemuan 2 : Introduction and Implementation Linked List I - 2101632225 - Hendy

Komentar

Postingan populer dari blog ini

Pertemuan 5 : Tree & Binary Tree - 2101632225 - Hendy

Pertemuan 2 : Introduction and Implementation Linked List I - 2101632225 - Hendy

Pertemuan 4 : Introduction to Tree, Binary Tree, and Expression Tree - 2101632225 - Hendy

Pertemuan 3 : Linked List Implementation II - 2101632225 - Hendy