Memanajemen Waktu Menggunakan
Array dan Doubly

Dalam kehidupan sehari-hari, kita sering dihadapkan dengan banyak kegiatan atau aktivitas. Salah satu tantangan yang sering dihadapi mahasiswa adalah bagaimana mengatur waktu dengan baik. Oleh karena itu, pada proyek ini saya membuat simulasi sederhana menggunakan struktur data Array dan Doubly Linked List untuk membantu memanajemen waktu secara lebih terstruktur.
🧠 Konsep
-
Array digunakan untuk menyimpan daftar aktivitas harian yang telah direncanakan.
-
Doubly Linked List digunakan untuk menyimpan histori aktivitas yang telah dilakukan, sehingga bisa melihat aktivitas sebelumnya maupun sesudahnya.
💻 Contoh Kasus: Manajemen Waktu & Aktivitas Harian
Bayangkan kita punya aplikasi sederhana untuk mencatat dan menelusuri aktivitas harian seperti ini wkwk;
Schedule today:
1. Bangun at 06.30
2. Mandi at 06.35
3. Kuliah at 07.30
4. Makan at 10.00
5. Tidur at 10.30
6. Mandi at 15.00
7. Kerja at 15.55
8. Tidur lagi 02.00
CONTOH PROGRAM
# Rencana schedule everyday disimpan dalam array
Schedule_today = [
"Bangun at 06.30",
"Mandi at 06.35",
"Kuliah at 07.30",
"Makan at 10.00",
"Tidur at 10.30",
"Mandi at 15.00",
"Kerja at 15.55 ",
"Tidur lagi 02.00"
]
print("Schedule today:")
for i, kegiatan in enumerate(Schedule_today, 1):
print(f"{i}. {kegiatan}")
Output
Schedule today:
1. Bangun at 06.30
2. Mandi at 06.35
3. Kuliah at 07.30
4. Makan at 10.00
5. Tidur at 10.30
6. Mandi at 15.00
7. Kerja at 15.55
8. Tidur lagi 02.00
Sel 1
# Inisialisasi linked list
linked_list = []
head = None
tail = None
def tambah_kegiatan(nama):
global head, tail
node = {"kegiatan": nama, "prev": None, "next": None}
index = len(linked_list)
if head is None:
head = tail = index
else:
node["prev"] = tail
linked_list[tail]["next"] = index
tail = index
linked_list.append(node)
print(f"✅ Menyelesaikan: {nama}")
def tampil_riwayat():
print("\n📜 Riwayat aktivitas:")
idx = head
while idx is not None:
print("-", linked_list[idx]["kegiatan"])
idx = linked_list[idx]["next"]
def mundur_riwayat():
print("\n⏪ Menelusuri Mundur:")
idx = tail
while idx is not None:
print("-", linked_list[idx]["kegiatan"])
idx = linked_list[idx]["prev"]
Sel 2
# Bayu menyelesaikan beberapa kegiatan
tambah_kegiatan("Bangun")
tambah_kegiatan("Tidur")
tambah_kegiatan("Tidur lagi")
# Menampilkan kegiatan dari awal
tampil_riwayat()
# Menelusuri kembali dari akhir
mundur_riwayat()
Output
✅ Menyelesaikan: Bangun
✅ Menyelesaikan: Tidur
✅ Menyelesaikan: Tidur lagi
📜 Riwayat Kegiatan:
- Bangun tidur
- Tidur
- Tidur lagi
⏪ Menelusuri Mundur:
- Tidur lagi
- Tidur
- Bangun
Sekian terima kasih
Tidak ada komentar:
Posting Komentar