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
3 yazı bulundu #recursion
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 1
Backtracking: Permutation, Subset ve Sudoku ile Arama Ağacını Budamak
Bilgisayar Bilimi Temelleri SERİ 19

Backtracking: Permutation, Subset ve Sudoku ile Arama Ağacını Budamak

Backtracking, choose, explore ve unchoose adımlarıyla bütün seçenekleri sistemli dener; asıl gücü çözüme varamayacak dalları erken budamaktır: 8-Queens'te 19 milyon node yerine 2.057. C# ile yield return kullanan permutation, subset ve combination üreticileri, N-Queens, en kısıtlı hücreden başlayan bir Sudoku solver ve kurallı bir ürün konfigüratörü yazıyoruz.

8 Kas 2026 13 dk 2
C#'ta Recursion: Base Case, Call Stack, StackOverflowException ve Iterative'e Çevirmek
Bilgisayar Bilimi Temelleri SERİ 05

C#'ta Recursion: Base Case, Call Stack, StackOverflowException ve Iterative'e Çevirmek

StackOverflowException .NET'te yakalanamaz ve bütün process'i öldürür; 8 MB'lık ana thread'de boş bir method yaklaşık 130.650 kez kendini çağırabildi, catch bloğu hiç çalışmadı. Yazıda recursion'ın anatomisini, call stack frame'lerini, recursive kodu explicit Stack<T> ile iterative'e çevirmeyi, JSON MaxDepth (64) ve EnsureSufficientExecutionStack gibi derinlik savunmalarını xUnit testleri ve gerçek çıktılarla anlatıyoruz.

8 Kas 2026 10 dk 2
Blog Haritası