Posts

Showing posts from April, 2026

ETS Genap - Rinaltra Nabasa Simanungkalit

Image
   Nama: Rinaltra Nabasa Simanungkalit NRP : 5025251024 Kelas Struktur Data (D) 1.        Jelaskan struktur data Array. Digunakan untuk apa Array, Berikan contoh penggunaannya dalam aplikasi. a.        Struktur data Array Adalah struktur data yang dipakai untuk menyimpan banyak nilai dengan tipe data yang sama dalam 1 Variabel. Array juga dapat diatur banyaknya data yang memiliki tipe data yang sama. Setiap Nilai dari Array ditandai dengan index tertentu, dan semua data pertama di array tersebut akan mendapatkan array index 0 b.       Array digunakan untuk menyimpan nilai dengan tipe data yang sama dengan jumlah elemen atau nilai yang sudah ditentukan. Array juga memungkinkan kita untuk mengambil data dialam array itu secara acak. c.        Contoh penggunaan Array dalam sebuah aplikasi Adalah             ...

Linked List (Pertemuan 8)

Image
Linked List Nama = Rinaltra Nabasa Simanungkalit NRP = 5025251024 Kelas = Struktur Data (D) Linked List => Merupakan sebuah struktur data yang membentuk sebuah rantai yang berisi "kamar-kamar" yang dapat disebut dengan Node. Node ini akan menyimpan Data dan refrensi untuk simpul selanjutnya Singly Linked List #include <bits/stdc++.h> using namespace std; struct Node{     int data;     Node* next; }; Node* insert(Node* node, int val){     Node* newNode = new Node();     newNode->data = val;     newNode->next = NULL;     if(node == NULL){         return newNode;     }     Node* temp = node;     while(temp->next != NULL){         temp = temp->next;     }     temp->next = newNode;     return node; } void traversal(Node* node){     Node* temp = node;     while(temp != NULL){     ...

Queue dan Implementasinya

Image
 Queue Queue adalah struktur data linear yang bekerja dengan prinsip  FIFO — First In, First Out .  Contoh Penggunaan Antrian Kantin Antrian Nasabah Bank Antrian Masuk Lapangan ketika Sewa  Operasi Queue enqueue() => tambah data dari belakang dequeue() => tambah data dari depan Algoritma ALGORITHM Enqueue(Q, item) BEGIN IF rear = MAX - 1 THEN OUTPUT "Queue Overflow" RETURN ENDIF IF front = -1 THEN front ← 0 rear ← 0 ELSE rear ← rear + 1 ENDIF Q[rear] ← item END #include <iostream> using namespace std; #define MAX 5 class Queue { private: int arr[MAX]; int front, rear; public: Queue() { front = -1; rear = -1; } bool isEmpty() { return (front == -1); } bool isFull() { return (rear == MAX - 1); } void enqueue(int x) { if (isFull()) { cout << "Queue Overflow\n"; return; } ...

Tugas Pertemuan 6

Image
Konversi Notasi Infix ke Postfix Kode bool isOperator(char c) { return (c == '+' || c == '-' || c == '/' || c == '^' || c == '*'); } // Menentukan prioritas operator matematika int precedence(char c) { switch (c) { case '^': return 3; case '*': case '/': return 2; case '+': case '-': return 1; default: return 0; } } // Merubah notasi infix -> posfix string infixToPostfix(string infix) { stack<char> st; string res = ""; for (int i = 0; i < infix.length(); i++) { char c = infix[i]; if (isalnum(c)) { res += c; continue; } if (c == '(') { st.push(c); continue; } if (c == ')') { while (!st.empty() && st.top() != '(') { res += st.top(); st.pop(); } if (!st.empty()) st.pop(); continue; } if (isOperator(c)) { ...
Image
 Tipe Data Stack Pertemuan 5 Stack diimplementasikan menggunakan array berukuran tetap. Variabel   top   digunakan untuk melacak indeks elemen paling atas. Nilai awal   top = -1   menandakan stack kosong. Constructor Menginisialisasi stack dengan mengatur nilai  top  ke  -1 , yang berarti stack dalam kondisi kosong dan belum ada elemen yang tersimpan. push(int x) Menambahkan elemen baru ke puncak stack. Sebelum menambahkan, fungsi ini memeriksa apakah stack sudah penuh ( top == MAX - 1 ). Jika penuh, mencetak pesan Stack Overflow. Jika belum penuh, nilai  top  dinaikkan satu lalu elemen disimpan di posisi tersebut. pop() Menghapus elemen yang berada di puncak stack. Fungsi ini memeriksa apakah stack kosong ( top == -1 ). Jika kosong, mencetak pesan Stack Underflow. Jika tidak kosong, elemen di posisi  top  diambil lalu nilai  top  diturunkan satu. peek() Melihat elemen paling atas stack tanpa menghapusnya. Jika stack ...