-
Notifications
You must be signed in to change notification settings - Fork 43
Modul 0 (Soal Latihan)
Implementasikanlah fungsi baru bernama forEachElement untuk Linked List (bisa diterapkan pada Singly Linked List atau Doubly Linked List). Fungsi forEachElement akan berfungsi layaknya iterator (mengiterasi) untuk setiap elemen dari awal hingga akhir pada Linked List yang mana setiap elemennya dikenakan operasi/fungsi lain untuk tujuan tertentu.
Misalkan, fungsi forEachElement untuk mencetak tiap elemen dalam Linked List.
Contoh Implementasi :
#include <stdio.h>
#include <stdlib.h>
/*
Linked list
.
.
*/
void printElement(int *elem) {
.
.
}
void multiply2(int *elem) {
.
.
}
int main()
{
List myList;
dlist_init(&myList);
// Anggap isi linked list adalah [1,2,3,4,5]
// .
// .
// .
// contoh fungsi forEachElement untuk mencetak data pada list
forEachElement(&myList, printElement);
// contoh fungsi forEachElement untuk mengalikan setiap elemen
// dengan 2
forEachElement(&myList, multiply2);
// isi list menjadi [2,4,6,8,10]
return 0;
}Selain itu, ujilah fungsi forEachElement yang kamu buat dengan beberapa fungsi berikut:
- reverseEach -- yakni untuk membalikkan (reverse) setiap bilangan.
- sumDigit -- yakni mengganti elemen dengan penjumlahan semua digit setiap bilangan.
Implementasi ini harus mengacu pada implementasi github.
Buatlah implementasi fungsi dArray_insertAt dan dArray_removeAt yang berguna untuk memasukkan elemen baru pada posisi yang diinginkan dan menghapus elemen pada posisi yang diinginkan. Prototipe fungsinya seperti berikut.
void dArray_insertAt(DynamicArray *darray, unsigned index, int value);
void dArray_removeAt(Dynamic *darray, unsigned index);-
indexmerupakan posisi/indeks yang diinginkan. -
valueadalah nilai baru yang akan dimasukkan.
Modifikasilah kode Dynamic Array dan Linked List (SinglyList) yang ada pada github agar menyimpan tipe string (asumsikan panjang string maks. adalah 100 karakter).
Modul Struktur Data
Ditulis oleh tim Asisten Struktur Data 2020 - Teknik Informatika ITS
Modul 0
- Pengenalan Struktur Data IND | ENG
- Dynamic Array IND | ENG
- Linked List IND | ENG
- Soal Latihan IND | ENG
Modul 1
- Stack IND | ENG
- Queue IND | ENG
- Deque IND | ENG
- Priority Queue (List Based) IND | ENG
- Soal Latihan IND | ENG
Modul 2
- Pengenalan Tree IND | ENG
- Binary Search Tree IND | ENG
- Traversal BST IND | ENG
- Soal Latihan IND | ENG
Modul 3
Modul 4
- Melangkah Menuju C++ | ENG
- Standard Template Library Container | ENG
- Pengenalan Graf | ENG
- Traversal Graf | ENG
Modul 5