Pertemuan 2

Structure adalah suatu data tipe buatan user yang digunakan untuk menyimpan sekumpulan data yang berkaitan secara bersama-sama, sedangkan array hanya dapat menyimpan informasi atau data dengan tipe yang sama. Data-data didalam struktur dapat memiliki tipe data yang berbeda.

Cara Membuat Structure :
struct nama_struct
{
tipe_data variable_pertama;
tipe_data variable_kedua;
// dan seterusnya
};

Contoh :
struct Mahasiswa
{
char nim[11];
char nama[101];
};

Untuk membuat variable dengan tipe data struct yang dibuat user, kita membuatnya seperti membuat variable biasa.
Contoh :

struct Mahasiswa mhs;

atau Kita Bisa Mendeklarasikan struct dan sekaligus membuat variablenya.
Contoh :

struct Mahasiswa
{
char nim[11];
char nama[101];
} mhs;

Untuk mengakses variable yang terdapat didalam sebuah struct, kita menggunakan symbol “.” (dot).
Contoh :

strcpy(mhs.nama, “Ivan”); // Memberikan nilai
printf(“%s”, mhs.nama); // Mengakses nilai

Nested Structure
Kita dapat membuat struct di dalam struct.
Contoh :
struct Gamer
{
char nama[101];
int level;
};

struct Mahasiswa
{
char nim[11];
char nama[101];
Gamer gamer;
} mhs;

Kita juga bisa membuat Array of Structure
Contoh :

struct Mahasiswa mhs[100];

Dynamic Memory Allocation
Kita dapat mengalokasikan memory dinamis saat runtime. Caranya adalah dengan menggunakan fungsi malloc(). Untuk menghapus memory yang sudah dialokasikan, kita gunakan fungsi free()
Contoh :

int *p = (int*) malloc(sizeof(int)); // Allocate
free(p); // Deallocate

Perkenalan Linked List
Linked List adalah suatu struktur data yang terdiri dari deretan data dimana setiap data mempunyai suatu field / variable yang digunakan untuk mengakses data sebelahnya. Setiap data didalam linked list disebut Node. Linked List yang hanya memiliki 1 variable penghubung ke node lain disebut Single Linked List.

Array VS Linked List
Array :
Sekumpulan element
– Menyimpan nilai di lokasi memory yang berurutan
– Dapat diakses secara random

Linked List :
– Sekumpulan node
– Tidak menyimpan node di memory yang berurutan
– Hanya dapat diakses secara berurutan

This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *