Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
5 yazı bulundu #big-o
Big-O'nun Söylemedikleri: Sabitler, Cache ve BenchmarkDotNet ile Ölçmek
Bilgisayar Bilimi Temelleri SERİ 05

Big-O'nun Söylemedikleri: Sabitler, Cache ve BenchmarkDotNet ile Ölçmek

Big-O büyümeyi söyler ama gerçek süreyi sabitler, cache, allocation ve girdi dağılımı belirler. 10 kitapta O(n²) insertion sort'un LINQ'ten iki kat hızlı olması, LinkedList'in 3,8 kat yavaşlığı, kötü GetHashCode ile Dictionary'nin O(n²)'ye düşmesi ve doubling experiment ile complexity'yi ölçerek tahmin etmek.

8 Kas 2026 12 dk 4
Amortized Analysis: List<T>.Add Neden O(1) Sayılır
Bilgisayar Bilimi Temelleri SERİ 04

Amortized Analysis: List<T>.Add Neden O(1) Sayılır

List<T>.Add bazen bütün listeyi kopyalar ama kapasite ikiye katlandığı için n Add'in toplam maliyeti 3n'i geçmez; bu yüzden amortized O(1) sayılır. Aggregate, accounting ve potential method, +10 büyümenin 50 milyar kopyası, Dictionary'nin asal boyutları ve 38 ms'lik resize spike'ı gerçek ölçümlerle.

8 Kas 2026 11 dk 3
Space Complexity: Ek Bellek, Recursion Stack'i ve Allocation
Bilgisayar Bilimi Temelleri SERİ 03

Space Complexity: Ek Bellek, Recursion Stack'i ve Allocation

Space complexity, bir algoritmanın aynı anda canlı tuttuğu belleğin n ile nasıl büyüdüğüdür; recursion derinliği de stack'te bellektir. 1,5 MB'lık thread stack'inde düşen recursion, Split ile Span, memoization ve 1 GB'lık log dosyasını 52 MB ile okumak; ReadAllLines'ın 512 MB'lık container'da ne yaptığı gerçek çıktılarla.

8 Kas 2026 12 dk 4
Koddan Time Complexity Çıkarmak: Döngüler, log n ve Recursion
Bilgisayar Bilimi Temelleri SERİ 02

Koddan Time Complexity Çıkarmak: Döngüler, log n ve Recursion

Koddan complexity okumak için ardışık blokları topla, iç içe döngüleri çarp, her adımda yarıya inen döngüye log n de, recursion için recurrence yaz. Gerçek sayımlarla üçgen döngü, naive Fibonacci, merge sort, Master theorem, LINQ'in gizli döngüleri ve O(n·m)'den O(n+m)'e inen sipariş eşleştirme benchmark'ı.

8 Kas 2026 13 dk 5
Big-O Notation Nedir: Büyüme Hızı, O, Ω, Θ ve Worst Case
Bilgisayar Bilimi Temelleri SERİ 01

Big-O Notation Nedir: Büyüme Hızı, O, Ω, Θ ve Worst Case

Big-O bir algoritmanın süresini saniyeyle değil, girdi boyutu n büyüdükçe adım sayısının nasıl büyüdüğüyle anlatır. O, Ω ve Θ farkı, n'i doğru seçmek, best/average/worst case ve List, HashSet ile binary search'ün 10 ile 1.000.000 element arasında BenchmarkDotNet ile ölçülmüş gerçek büyümesi.

8 Kas 2026 11 dk 4
Blog Haritası