Array İşlemleri - Performans Analizi

Array İşlemleri - Performans Analizi 📊 Temel Array İşlemleri ve Zaman Karmaşıklıkları 1. ➕ Ekleme İşlemi (Insert) Zaman Karmaşıklığı: O(n) Örnek Senaryo: Başlangıç: [3, 8, 6, 7] İşlem: 1. pozisyona 5 ekle Sonuç: [3, 5, 8, 6, 7] İşlem Adımları: Adım 1: [3, 8, 6, 7, _] ↓ Adım 2: [3, _, 8, 6, 7] ← Elemanları kaydır ↓ Adım 3: [3, 5, 8, 6, 7] ← Yeni elemanı ekle Neden O(n)? ...

November 4, 2025 · 2 min · Emrullah Enis Çetinkaya

Queue (Kuyruk) Veri Yapısı

Queue (Kuyruk) Veri Yapısı 📋 Genel Tanım ve Kavram Queue (Kuyruk), bilgisayar bilimlerinde kullanılan temel veri yapılarından biridir ve FIFO (First-In-First-Out) prensibine göre çalışır. 💡 Gerçek Hayat Analojisi: Market kasasındaki kuyruk gibi düşünün. İlk sıraya giren müşteri, ilk hizmet alan müşteridir. Yeni müşteriler her zaman kuyruğun sonuna eklenir. Temel Prensip İlk eklenen eleman, ilk çıkarılan elemandır Elemanlar sadece bir uçtan eklenir (back/rear) Elemanlar sadece diğer uçtan çıkarılır (front) ┌───────────────────────────────────────────┐ │ QUEUE │ │ │ │ front/head back/rear/tail │ │ ↓ ↓ │ │ [a] → [b] → [c] → [d] → [e] │ │ ↑ ↑ │ │ ÇIKIŞ GİRİŞ │ │ (dequeue) (enqueue) │ └───────────────────────────────────────────┘ 🔧 Temel Operasyonlar Operasyon Açıklama Karmaşıklık enqueue(e) Kuyruğun sonuna eleman ekler O(1) dequeue() Kuyruğun başındaki elemanı çıkarır ve döndürür O(1) first() / peek() Başındaki elemana bakar (çıkarmaz) O(1) size() Eleman sayısını döndürür O(1) isEmpty() Kuyruğun boş olup olmadığını kontrol eder O(1) 💻 Bağlı Liste ile İmplementasyon Neden Bağlı Liste? ✅ Dinamik boyut - önceden boyut belirlemeye gerek yok ✅ Tüm operasyonlar O(1) zamanda çalışır ✅ Overflow problemi yok ...

November 4, 2025 · 5 min · Emrullah Enis Çetinkaya

🔍 Arama Algoritmaları

🔍 Arama Algoritmaları 🎯 Temel Problem Arama nedir? Çok sayıda benzer nesne içinden belirli özelliklere sahip olanları tespit etme işlemidir. Günlük Hayattan Örnekler Problem Türü Pratik Kullanım 🔤 Pattern Matching Google’da kelime arama, metin editörlerinde “Bul” özelliği 📊 Veri Tabanı Sorgusu Öğrenci bilgi sisteminde öğrenci bulma, envanter kontrolü 🏗️ Temel Yapı Taşları Element Sınıfı Tasarımı class Element { int searchKey; // Anahtar alan (örn: 2019280045) String name; // İsim String surname; // Soyisim String department; // Bölüm } Veri Koleksiyonu Oluşturma final int MAXELEM = 1000; Element[] database = new Element[MAXELEM]; 📌 Hedef: database[i].searchKey == arananAnahtar şartını sağlayan elemanı bulmak ...

November 4, 2025 · 7 min · Emrullah Enis Çetinkaya

Map ve Hash Table Nedir? (Java ile Açıklamalı)

🗺️ Map (Harita) ve Hash Table (Karma Tablo) Kapsamlı Rehber: Veri yapılarının temel mantığı, implementasyon yöntemleri, avantajları, dezavantajları ve karmaşıklıkları 📋 İçindekiler Giriş: Map Nedir? Temel Map İşlemleri Implementasyon Yöntemleri Hash Table: Temel Yapı ve Adımlar Çakışmalar (Kollisionen) Zaman Karmaşıklığı Karşılaştırması Avantaj ve Dezavantajlar Sonuç ve Kullanım Önerileri 🎯 Giriş: Map (Harita) Nedir? Map (Harita), anahtar-değer (key-value) çiftlerini depolamak için kullanılan soyut bir veri yapısıdır. Bu yapıda en önemli kural: ...

November 13, 2025 · 10 min · Enis