{"id":37000,"date":"2025-12-26T01:30:38","date_gmt":"2025-12-25T22:30:38","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/"},"modified":"2025-12-26T01:30:38","modified_gmt":"2025-12-25T22:30:38","slug":"58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/","title":{"rendered":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131"},"content":{"rendered":"<h2>58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131<\/h2>\n<p>LeetCode&#8217;un &#8220;Top Interview 150&#8221; listesinde yer alan 58. problem olan &#8220;Length of Last Word&#8221;, size verilen bir string i\u00e7indeki son kelimenin uzunlu\u011funu bulman\u0131z\u0131 isteyen temel ama \u00f6nemli bir algoritma sorusudur. Bu problem, string manip\u00fclasyonu, k\u00f6\u015fe durumlar\u0131 (edge cases) ele alma ve verimli algoritma tasarlama becerilerinizi test etmek i\u00e7in harika bir f\u0131rsat sunar. M\u00fclakatlarda s\u0131k\u00e7a kar\u015f\u0131la\u015f\u0131lan bu t\u00fcr sorular, adaylar\u0131n sadece do\u011fru cevab\u0131 bulmakla kalmay\u0131p, ayn\u0131 zamanda farkl\u0131 yakla\u015f\u0131mlar\u0131 de\u011ferlendirebilme ve performans analizini yapabilme yeteneklerini de \u00f6l\u00e7er. Bu makalede, problemin detaylar\u0131na inecek, farkl\u0131 \u00e7\u00f6z\u00fcm stratejilerini inceleyecek, kod \u00f6rnekleri sunacak ve performans analizleri yaparak en uygun yakla\u015f\u0131mlar\u0131 tart\u0131\u015faca\u011f\u0131z.<\/p>\n<h2>Problemin Tan\u0131m\u0131 ve Temel Gereksinimler<\/h2>\n<p>Herhangi bir algoritma problemine ba\u015flamadan \u00f6nce, problemi tam olarak anlamak ve t\u00fcm gereksinimleri netle\u015ftirmek kritik \u00f6neme sahiptir. &#8220;Length of Last Word&#8221; problemi, basit g\u00f6r\u00fcnen ancak dikkatli d\u00fc\u015f\u00fcnmeyi gerektiren detaylara sahiptir.<\/p>\n<h3>Problemin Amac\u0131<\/h3>\n<p>Size bir string (dize) <code>s<\/code> verilir. G\u00f6reviniz, bu string&#8217;deki son kelimenin uzunlu\u011funu d\u00f6nd\u00fcrmektir. Bir kelime, alfabetik karakterlerden olu\u015fan ve bo\u015fluklarla ayr\u0131lm\u0131\u015f bir karakter dizisi olarak tan\u0131mlan\u0131r. String&#8217;in sonunda veya aras\u0131nda birden fazla bo\u015fluk olabilir.<\/p>\n<h3>Giri\u015f ve \u00c7\u0131k\u0131\u015f Format\u0131<\/h3>\n<ul>\n<li><b>Giri\u015f:<\/b> Tek bir string <code>s<\/code>. Bu string, \u0130ngilizce b\u00fcy\u00fck\/k\u00fc\u00e7\u00fck harflerden ve bo\u015fluk karakterlerinden olu\u015fabilir.<\/li>\n<li><b>\u00c7\u0131k\u0131\u015f:<\/b> Bir tamsay\u0131 (integer), son kelimenin uzunlu\u011fu. E\u011fer string&#8217;de kelime yoksa (\u00f6rne\u011fin sadece bo\u015fluklardan olu\u015fuyorsa), 0 d\u00f6nd\u00fcr\u00fclmelidir.<\/li>\n<\/ul>\n<h3>K\u00f6\u015fe Durumlar (Edge Cases)<\/h3>\n<p>Bu problemde g\u00f6z \u00f6n\u00fcnde bulundurman\u0131z gereken birka\u00e7 \u00f6nemli k\u00f6\u015fe durum bulunmaktad\u0131r:<\/p>\n<ul>\n<li><b>Sondaki Bo\u015fluklar:<\/b> &#8220;Hello World &#8221; gibi bir string&#8217;de, sondaki bo\u015fluklar\u0131n son kelimeyi (World) etkilememesi gerekir.<\/li>\n<li><b>Ba\u015ftaki Bo\u015fluklar:<\/b> &#8221; Hello World&#8221; gibi bir string&#8217;de, ba\u015ftaki bo\u015fluklar da g\u00f6z ard\u0131 edilmelidir.<\/li>\n<li><b>Birden Fazla Bo\u015fluk:<\/b> &#8220;Hello   World&#8221; gibi bir string&#8217;de, kelimeler aras\u0131ndaki birden fazla bo\u015flu\u011fun do\u011fru \u015fekilde i\u015flenmesi \u00f6nemlidir.<\/li>\n<li><b>Sadece Bo\u015fluklardan Olu\u015fan String:<\/b> &#8221;   &#8221; gibi bir string&#8217;de, sonu\u00e7 0 olmal\u0131d\u0131r.<\/li>\n<li><b>Bo\u015f String:<\/b> String bo\u015fsa, sonu\u00e7 0 olmal\u0131d\u0131r.<\/li>\n<li><b>Tek Kelimelik String:<\/b> &#8220;Word&#8221; veya &#8221; Word &#8221; gibi durumlarda, yine do\u011fru uzunluk d\u00f6nd\u00fcr\u00fclmelidir.<\/li>\n<\/ul>\n<h3>Neden \u00d6nemli? (Pratik Uygulamalar)<\/h3>\n<p>Bu problem, ger\u00e7ek d\u00fcnya uygulamalar\u0131nda metin i\u015fleme, veri temizleme ve arama algoritmalar\u0131 gibi alanlarda kar\u015f\u0131m\u0131za \u00e7\u0131kabilecek temel bir yap\u0131 ta\u015f\u0131d\u0131r. \u00d6rne\u011fin, bir kullan\u0131c\u0131n\u0131n girdi\u011fi metinden son anahtar kelimeyi \u00e7\u0131karmak, dosya yollar\u0131nda son dizini veya dosya ad\u0131n\u0131 bulmak gibi senaryolarda bu mant\u0131k kullan\u0131labilir. Ayr\u0131ca, string manip\u00fclasyonu becerilerini geli\u015ftirmek i\u00e7in harika bir al\u0131\u015ft\u0131rmad\u0131r.<\/p>\n<h2>Temel Yakla\u015f\u0131m: String Metotlar\u0131 Kullan\u0131m\u0131<\/h2>\n<p>Bu problemin en sezgisel ve \u00e7o\u011fu programlama dilinde kolayca uygulanabilen \u00e7\u00f6z\u00fcm\u00fc, dilin sundu\u011fu haz\u0131r string i\u015fleme metotlar\u0131n\u0131 kullanmakt\u0131r. Bu yakla\u015f\u0131m genellikle kodun daha k\u0131sa ve okunabilir olmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3><code>split()<\/code> Metodu ile \u00c7\u00f6z\u00fcm<\/h3>\n<p>\u00c7o\u011fu modern programlama dili, bir string&#8217;i belirli bir ay\u0131r\u0131c\u0131ya g\u00f6re par\u00e7alara ay\u0131rarak bir dizi (liste) d\u00f6nd\u00fcren bir <code>split()<\/code> metoduna sahiptir. Bo\u015fluk karakteri (whitespace) bu ay\u0131r\u0131c\u0131 olarak kullan\u0131labilir.<\/p>\n<h3><code>strip()<\/code> veya <code>trim()<\/code> Kullan\u0131m\u0131<\/h3>\n<p>Problemin \u00f6nemli bir detay\u0131, string&#8217;in ba\u015f\u0131nda veya sonunda olabilecek bo\u015fluklard\u0131r. Bu bo\u015fluklar, son kelimeyi bulma i\u015flemimizi yan\u0131ltabilir. \u00c7o\u011fu dilde, string&#8217;in ba\u015f\u0131ndaki ve sonundaki bo\u015fluklar\u0131 kald\u0131ran <code>strip()<\/code> (Python) veya <code>trim()<\/code> (Java\/JavaScript) gibi metotlar bulunur. Bu metotlar\u0131 kullanarak string&#8217;i \u00f6nceden temizlemek, i\u015fimizi olduk\u00e7a kolayla\u015ft\u0131r\u0131r.<\/p>\n<h3>Ad\u0131m Ad\u0131m Algoritma<\/h3>\n<ol>\n<li>Giri\u015f string&#8217;inin ba\u015f\u0131ndaki ve sonundaki t\u00fcm bo\u015fluklar\u0131 temizleyin (\u00f6rne\u011fin Python&#8217;da <code>s.strip()<\/code>).<\/li>\n<li>Temizlenmi\u015f string&#8217;i bo\u015fluk karakterine g\u00f6re ay\u0131rarak kelimelerden olu\u015fan bir liste elde edin (\u00f6rne\u011fin Python&#8217;da <code>s.split(' ')<\/code>).<\/li>\n<li>E\u011fer kelime listesi bo\u015fsa (yani orijinal string sadece bo\u015fluklardan olu\u015fuyorsa), 0 d\u00f6nd\u00fcr\u00fcn.<\/li>\n<li>Listede eleman varsa, son eleman\u0131 (yani son kelimeyi) al\u0131n.<\/li>\n<li>Son kelimenin uzunlu\u011funu d\u00f6nd\u00fcr\u00fcn.<\/li>\n<\/ol>\n<h3>Kod \u00d6rne\u011fi (Python)<\/h3>\n<pre><code class=\"language-python\">\nclass Solution:\n    def lengthOfLastWord(self, s: str) -> int:\n        # 1. String'in ba\u015f\u0131ndaki ve sonundaki bo\u015fluklar\u0131 temizle\n        s_stripped = s.strip()\n\n        # 2. Temizlenmi\u015f string'i bo\u015fluklara g\u00f6re ay\u0131rarak kelimeler listesi olu\u015ftur\n        words = s_stripped.split(' ')\n\n        # 3. E\u011fer kelime listesi bo\u015fsa (\u00f6rne\u011fin string sadece bo\u015fluklardan olu\u015fuyorsa), 0 d\u00f6nd\u00fcr\n        if not words or (len(words) == 1 and not words[0]):\n            return 0\n        \n        # 4. Son kelimeyi al ve uzunlu\u011funu d\u00f6nd\u00fcr\n        # Not: split() metodu, birden fazla bo\u015flu\u011fu tek bir ay\u0131r\u0131c\u0131 olarak kabul eder\n        # ve bo\u015f string'leri listeye eklemez, bu da i\u015fimizi kolayla\u015ft\u0131r\u0131r.\n        # Ancak, e\u011fer split() bo\u015f string'leri de listeye ekleseydi (\u00f6rn. 'a  b'.split(' ') -> ['a', '', 'b']),\n        # o zaman bo\u015f string'leri filtrelememiz gerekebilirdi.\n        # Python'\u0131n varsay\u0131lan split() davran\u0131\u015f\u0131 bu problem i\u00e7in uygundur.\n        \n        return len(words[-1])\n\n# Test Durumlar\u0131\n# sol = Solution()\n# print(sol.lengthOfLastWord(\"Hello World\"))        # \u00c7\u0131k\u0131\u015f: 5\n# print(sol.lengthOfLastWord(\"   fly me   to   the moon  \")) # \u00c7\u0131k\u0131\u015f: 4\n# print(sol.lengthOfLastWord(\"luffy is still joyboy\")) # \u00c7\u0131k\u0131\u015f: 6\n# print(sol.lengthOfLastWord(\"a\"))                   # \u00c7\u0131k\u0131\u015f: 1\n# print(sol.lengthOfLastWord(\" \"))                   # \u00c7\u0131k\u0131\u015f: 0\n# print(sol.lengthOfLastWord(\"   a   \"))            # \u00c7\u0131k\u0131\u015f: 1\n<\/pre>\n<p><\/code><\/p>\n<h2>\u0130ki \u0130\u015faret\u00e7i (Two-Pointer) Yakla\u015f\u0131m\u0131<\/h2>\n<p>String metotlar\u0131 kullanmak kolay olsa da, baz\u0131 m\u00fclakatlarda string'i ba\u015ftan sona kendiniz i\u015flemeniz istenebilir veya performans kayg\u0131lar\u0131 nedeniyle haz\u0131r metotlardan ka\u00e7\u0131nman\u0131z gerekebilir. Bu durumda, iki i\u015faret\u00e7i (two-pointer) tekni\u011fi olduk\u00e7a verimli bir \u00e7\u00f6z\u00fcm sunar.<\/p>\n<h3>Sa\u011fdan Sola Tarama Mant\u0131\u011f\u0131<\/h3>\n<p>Problemin \"son kelime\" ile ilgili olmas\u0131, string'i sa\u011fdan sola do\u011fru taraman\u0131n daha mant\u0131kl\u0131 olaca\u011f\u0131n\u0131 g\u00f6sterir. Bu sayede, ilk kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z kelime do\u011frudan son kelime olacakt\u0131r ve ba\u015ftaki bo\u015fluklarla u\u011fra\u015fmam\u0131za gerek kalmaz.<\/p>\n<h3>Bo\u015fluklar\u0131 Atlama ve Kelimeyi Sayma<\/h3>\n<p>Algoritma, string'in en sa\u011f\u0131ndan ba\u015flayarak karakterleri kontrol eder. \u0130lk olarak, sondaki t\u00fcm bo\u015fluklar\u0131 atlar\u0131z. Ard\u0131ndan, bir harf karakteriyle kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131zda, bu kelimenin ba\u015flang\u0131c\u0131d\u0131r. Bu noktadan itibaren sola do\u011fru ilerlerken, kelimenin uzunlu\u011funu saymaya ba\u015flar\u0131z. Bir bo\u015flukla tekrar kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131zda veya string'in ba\u015f\u0131na ula\u015ft\u0131\u011f\u0131m\u0131zda, kelime bitmi\u015f demektir ve sayd\u0131\u011f\u0131m\u0131z uzunluk son kelimenin uzunlu\u011fudur.<\/p>\n<h3>Algoritma Detaylar\u0131<\/h3>\n<ol>\n<li>Bir <code>length<\/code> de\u011fi\u015fkeni tan\u0131mlay\u0131n ve ba\u015flang\u0131\u00e7 de\u011ferini 0 yap\u0131n.<\/li>\n<li>String'in en son karakterinden ba\u015flayarak (<code>i = len(s) - 1<\/code>) sola do\u011fru ilerleyin.<\/li>\n<li>\u0130lk d\u00f6ng\u00fcde, sondaki t\u00fcm bo\u015fluklar\u0131 atlay\u0131n: <code>while i >= 0 and s[i] == ' ': i -= 1<\/code>.<\/li>\n<li>\u0130kinci d\u00f6ng\u00fcde, bir harf karakteriyle kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda kelimenin uzunlu\u011funu saymaya ba\u015flay\u0131n: <code>while i >= 0 and s[i] != ' ': length += 1; i -= 1<\/code>.<\/li>\n<li>Kelime sayma d\u00f6ng\u00fcs\u00fc bitti\u011finde (yani bir bo\u015flukla kar\u015f\u0131la\u015f\u0131ld\u0131\u011f\u0131nda veya string'in ba\u015f\u0131na gelindi\u011finde), <code>length<\/code> de\u011fi\u015fkeni son kelimenin uzunlu\u011funu tutacakt\u0131r. Bu de\u011feri d\u00f6nd\u00fcr\u00fcn.<\/li>\n<\/ol>\n<h3>Kod \u00d6rne\u011fi (Python)<\/h3>\n<pre><code class=\"language-python\">\nclass Solution:\n    def lengthOfLastWord(self, s: str) -> int:\n        length = 0\n        i = len(s) - 1\n\n        # 1. Sondaki bo\u015fluklar\u0131 atla\n        while i >= 0 and s[i] == ' ':\n            i -= 1\n\n        # 2. Kelimenin uzunlu\u011funu say\n        while i >= 0 and s[i] != ' ':\n            length += 1\n            i -= 1\n        \n        return length\n\n# Test Durumlar\u0131\n# sol = Solution()\n# print(sol.lengthOfLastWord(\"Hello World\"))        # \u00c7\u0131k\u0131\u015f: 5\n# print(sol.lengthOfLastWord(\"   fly me   to   the moon  \")) # \u00c7\u0131k\u0131\u015f: 4\n# print(sol.lengthOfLastWord(\"luffy is still joyboy\")) # \u00c7\u0131k\u0131\u015f: 6\n# print(sol.lengthOfLastWord(\"a\"))                   # \u00c7\u0131k\u0131\u015f: 1\n# print(sol.lengthOfLastWord(\" \"))                   # \u00c7\u0131k\u0131\u015f: 0\n# print(sol.lengthOfLastWord(\"   a   \"))            # \u00c7\u0131k\u0131\u015f: 1\n<\/pre>\n<p><\/code><\/p>\n<h2>Performans Analizi ve Karma\u015f\u0131kl\u0131k<\/h2>\n<p>Farkl\u0131 \u00e7\u00f6z\u00fcm yakla\u015f\u0131mlar\u0131n\u0131n performans\u0131n\u0131 anlamak, b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken veya k\u0131s\u0131tl\u0131 kaynaklara sahip sistemlerde kritik \u00f6neme sahiptir. \"Length of Last Word\" problemi i\u00e7in iki ana yakla\u015f\u0131m\u0131n zaman ve alan karma\u015f\u0131kl\u0131klar\u0131n\u0131 inceleyelim.<\/p>\n<h3>Zaman Karma\u015f\u0131kl\u0131\u011f\u0131 (Time Complexity)<\/h3>\n<ul>\n<li><b>String Metotlar\u0131 Kullan\u0131m\u0131 (<code>strip()<\/code> ve <code>split()<\/code>):<\/b>\n<ul>\n<li><code>strip()<\/code> metodu, string'i ba\u015ftan sona bir kez tarar. Bu O(N) zaman karma\u015f\u0131kl\u0131\u011f\u0131na sahiptir, burada N string'in uzunlu\u011fudur.<\/li>\n<li><code>split()<\/code> metodu da string'i ba\u015ftan sona bir kez tarar ve yeni bir liste olu\u015fturur. Bu da O(N) zaman karma\u015f\u0131kl\u0131\u011f\u0131na sahiptir.<\/li>\n<li>Dolay\u0131s\u0131yla, bu yakla\u015f\u0131m\u0131n toplam zaman karma\u015f\u0131kl\u0131\u011f\u0131 <b>O(N)<\/b>'dir.<\/li>\n<\/ul>\n<\/li>\n<li><b>\u0130ki \u0130\u015faret\u00e7i (Two-Pointer) Yakla\u015f\u0131m\u0131:<\/b>\n<ul>\n<li>Bu yakla\u015f\u0131m, string'i en fazla bir kez (sa\u011fdan sola) tarar. En k\u00f6t\u00fc durumda (t\u00fcm string tek bir kelimeyse veya sadece bo\u015fluklardan olu\u015fuyorsa), t\u00fcm string'i taramak zorunda kal\u0131r.<\/li>\n<li>Bu nedenle, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131n\u0131n zaman karma\u015f\u0131kl\u0131\u011f\u0131 da <b>O(N)<\/b>'dir.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Her iki yakla\u015f\u0131m da lineer zaman karma\u015f\u0131kl\u0131\u011f\u0131na sahiptir, yani string'in uzunlu\u011fu artt\u0131k\u00e7a \u00e7al\u0131\u015fma s\u00fcresi do\u011frusal olarak artar.<\/p>\n<h3>Alan Karma\u015f\u0131kl\u0131\u011f\u0131 (Space Complexity)<\/h3>\n<ul>\n<li><b>String Metotlar\u0131 Kullan\u0131m\u0131 (<code>strip()<\/code> ve <code>split()<\/code>):<\/b>\n<ul>\n<li><code>strip()<\/code> metodu genellikle orijinal string'in bir kopyas\u0131n\u0131 d\u00f6nd\u00fcr\u00fcr, bu da O(N) alan gerektirebilir.<\/li>\n<li><code>split()<\/code> metodu, kelimeleri i\u00e7eren yeni bir liste olu\u015fturur. En k\u00f6t\u00fc durumda (t\u00fcm string tek bir kelimeyse), bu liste yine O(N) alan kaplayabilir (string'in kendisi kadar). E\u011fer \u00e7ok say\u0131da k\u0131sa kelime varsa, liste boyutu da N'e yak\u0131n olabilir.<\/li>\n<li>Bu nedenle, bu yakla\u015f\u0131m\u0131n toplam alan karma\u015f\u0131kl\u0131\u011f\u0131 <b>O(N)<\/b>'dir.<\/li>\n<\/ul>\n<\/li>\n<li><b>\u0130ki \u0130\u015faret\u00e7i (Two-Pointer) Yakla\u015f\u0131m\u0131:<\/b>\n<ul>\n<li>Bu yakla\u015f\u0131m, sadece birka\u00e7 de\u011fi\u015fken (<code>length<\/code>, <code>i<\/code>) kullan\u0131r ve yeni bir veri yap\u0131s\u0131 olu\u015fturmaz.<\/li>\n<li>Bu nedenle, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131n\u0131n alan karma\u015f\u0131kl\u0131\u011f\u0131 <b>O(1)<\/b>'dir (sabit alan).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Yakla\u015f\u0131mlar\u0131n Kar\u015f\u0131la\u015ft\u0131r\u0131lmas\u0131<\/h3>\n<p>A\u015fa\u011f\u0131daki tablo, iki yakla\u015f\u0131m\u0131n performans \u00f6zelliklerini \u00f6zetlemektedir:<\/p>\n<table>\n<thead>\n<tr>\n<th>Yakla\u015f\u0131m<\/th>\n<th>Zaman Karma\u015f\u0131kl\u0131\u011f\u0131<\/th>\n<th>Alan Karma\u015f\u0131kl\u0131\u011f\u0131<\/th>\n<th>Okunabilirlik<\/th>\n<th>Uygulama Kolayl\u0131\u011f\u0131<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>String Metotlar\u0131<\/td>\n<td>O(N)<\/td>\n<td>O(N)<\/td>\n<td>Y\u00fcksek<\/td>\n<td>Y\u00fcksek<\/td>\n<\/tr>\n<tr>\n<td>\u0130ki \u0130\u015faret\u00e7i<\/td>\n<td>O(N)<\/td>\n<td>O(1)<\/td>\n<td>Orta<\/td>\n<td>Orta<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Optimizasyonlar<\/h3>\n<p>Alan karma\u015f\u0131kl\u0131\u011f\u0131 a\u00e7\u0131s\u0131ndan, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131 daha optimize bir \u00e7\u00f6z\u00fcmd\u00fcr \u00e7\u00fcnk\u00fc sabit bellek kullan\u0131r. Zaman karma\u015f\u0131kl\u0131\u011f\u0131 her iki durumda da O(N) oldu\u011fundan, bu problem i\u00e7in daha h\u0131zl\u0131 bir algoritma bulmak m\u00fcmk\u00fcn de\u011fildir, \u00e7\u00fcnk\u00fc t\u00fcm string'i en az bir kez taramak zorunday\u0131z. Ancak, C++ gibi dillerde <code>std::string::find_last_not_of<\/code> ve <code>std::string::find_last_of<\/code> gibi metotlar, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131n\u0131n arkas\u0131ndaki mant\u0131\u011f\u0131 daha soyut bir \u015fekilde sunarak kodun daha k\u0131sa olmas\u0131n\u0131 sa\u011flayabilir.<\/p>\n<h2>Farkl\u0131 Programlama Dillerinde Uygulama<\/h2>\n<p>LeetCode problemleri genellikle birden fazla dilde \u00e7\u00f6z\u00fclebilir. Yukar\u0131da Python \u00f6rneklerini g\u00f6rd\u00fck, \u015fimdi Java ve C++'ta benzer yakla\u015f\u0131mlar\u0131 nas\u0131l uygulayabilece\u011fimize bakal\u0131m.<\/p>\n<h3>Java \u00d6rne\u011fi (String Metotlar\u0131)<\/h3>\n<p>Java'da <code>trim()<\/code> ve <code>split()<\/code> metotlar\u0131 olduk\u00e7a benzer \u015fekilde \u00e7al\u0131\u015f\u0131r. <code>split()<\/code> metodu regex (d\u00fczenli ifade) alabilir, bu da birden fazla bo\u015flu\u011fu tek bir ay\u0131r\u0131c\u0131 olarak ele almak i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<pre><code class=\"language-java\">\nclass Solution {\n    public int lengthOfLastWord(String s) {\n        String trimmedS = s.trim(); \/\/ Ba\u015ftaki ve sondaki bo\u015fluklar\u0131 kald\u0131r\u0131r\n\n        if (trimmedS.isEmpty()) { \/\/ Temizlenmi\u015f string bo\u015fsa\n            return 0;\n        }\n\n        \/\/ Bo\u015fluk karakterine g\u00f6re ay\u0131r\u0131r. \"\\\\s+\" regex'i bir veya daha fazla bo\u015flu\u011fu ifade eder.\n        String[] words = trimmedS.split(\"\\\\s+\");\n\n        \/\/ Son kelimenin uzunlu\u011funu d\u00f6nd\u00fcr\n        return words[words.length - 1].length();\n    }\n}\n<\/pre>\n<p><\/code><\/p>\n<h3>C++ \u00d6rne\u011fi (\u0130ki \u0130\u015faret\u00e7i)<\/h3>\n<p>C++'ta string'ler \u00fczerinde manuel olarak iterasyon yapmak Python'a g\u00f6re biraz daha fazla kod gerektirebilir ancak mant\u0131k ayn\u0131d\u0131r. <code>isspace()<\/code> fonksiyonu bir karakterin bo\u015fluk olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in kullan\u0131labilir.<\/p>\n<pre><code class=\"language-cpp\">\n#include <string>\n#include <algorithm> \/\/ isspace i\u00e7in\n\nclass Solution {\npublic:\n    int lengthOfLastWord(std::string s) {\n        int length = 0;\n        int i = s.length() - 1;\n\n        \/\/ Sondaki bo\u015fluklar\u0131 atla\n        while (i >= 0 && s[i] == ' ') { \/\/ std::isspace(s[i]) de kullan\u0131labilir\n            i--;\n        }\n\n        \/\/ Kelimenin uzunlu\u011funu say\n        while (i >= 0 && s[i] != ' ') { \/\/ std::isspace(s[i]) de kullan\u0131labilir\n            length++;\n            i--;\n        }\n        \n        return length;\n    }\n};\n<\/pre>\n<p><\/code><\/p>\n<h3>Dil Se\u00e7iminin Etkisi<\/h3>\n<p>G\u00f6r\u00fcld\u00fc\u011f\u00fc gibi, her dilde temel mant\u0131k ayn\u0131 kal\u0131rken, s\u00f6zdizimi ve baz\u0131 yard\u0131mc\u0131 fonksiyonlar farkl\u0131l\u0131k g\u00f6sterebilir. Python gibi diller string manip\u00fclasyonu i\u00e7in daha y\u00fcksek seviyeli ve \u00f6zl\u00fc metotlar sunarken, C++ gibi diller daha d\u00fc\u015f\u00fck seviyeli kontrol imkan\u0131 verir. M\u00fclakatlarda, genellikle en rahat oldu\u011funuz dilde \u00e7\u00f6z\u00fcm sunman\u0131z beklenir, ancak farkl\u0131 dillerdeki yakla\u015f\u0131mlar\u0131 bilmek, problem \u00e7\u00f6zme yetene\u011finizin geni\u015fli\u011fini g\u00f6sterir.<\/p>\n<h2>Yayg\u0131n Hatalar ve Dikkat Edilmesi Gerekenler<\/h2>\n<p>Bu problemde s\u0131k\u00e7a yap\u0131lan hatalar ve g\u00f6zden ka\u00e7an detaylar bulunmaktad\u0131r. Bu noktalara dikkat etmek, do\u011fru ve sa\u011flam bir \u00e7\u00f6z\u00fcm geli\u015ftirmenizi sa\u011flar.<\/p>\n<h3>Sondaki Bo\u015fluklar<\/h3>\n<p>En yayg\u0131n hatalardan biri, string'in sonunda bulunan bo\u015fluklar\u0131 g\u00f6z ard\u0131 etmektir. \"Hello World   \" gibi bir string'de, <code>split()<\/code> metodunu do\u011frudan kullanmak veya sa\u011fdan sola tarama yaparken bo\u015fluklar\u0131 atlamamak yanl\u0131\u015f sonu\u00e7lara yol a\u00e7abilir. <code>strip()<\/code> kullanmak veya sa\u011fdan sola tararken ilk bo\u015fluk atlama d\u00f6ng\u00fcs\u00fcn\u00fc do\u011fru uygulamak bu sorunu \u00e7\u00f6zer.<\/p>\n<h3>Sadece Bo\u015fluklardan Olu\u015fan Dizeler<\/h3>\n<p>\"   \" gibi sadece bo\u015fluklardan olu\u015fan bir string verildi\u011finde, sonucun 0 olmas\u0131 beklenir. <code>split()<\/code> metodu kullanan \u00e7\u00f6z\u00fcmlerde, bo\u015f bir liste veya sadece bo\u015f string'lerden olu\u015fan bir liste elde edilebilir. Bu durumu kontrol etmek ve 0 d\u00f6nd\u00fcrmek \u00f6nemlidir. \u0130ki i\u015faret\u00e7i yakla\u015f\u0131m\u0131nda ise, t\u00fcm string bo\u015fluklardan olu\u015fuyorsa, <code>i<\/code> de\u011fi\u015fkeni -1'e d\u00fc\u015fecek ve <code>length<\/code> 0 kalacakt\u0131r, bu da do\u011fal olarak do\u011fru sonucu verir.<\/p>\n<h3>Bo\u015f Dize Durumu<\/h3>\n<p>Giri\u015f string'i tamamen bo\u015fsa (<code>\"\"<\/code>), sonucun 0 olmas\u0131 gerekir. <code>strip()<\/code> metodu bo\u015f string'i yine bo\u015f string olarak d\u00f6nd\u00fcr\u00fcr. <code>split()<\/code> metodu bo\u015f string \u00fczerinde \u00e7a\u011fr\u0131ld\u0131\u011f\u0131nda baz\u0131 dillerde bo\u015f liste, baz\u0131lar\u0131nda ise tek elemanl\u0131 (bo\u015f string i\u00e7eren) bir liste d\u00f6nd\u00fcrebilir. Bu durumlar\u0131n do\u011fru \u015fekilde ele al\u0131nd\u0131\u011f\u0131ndan emin olunmal\u0131d\u0131r. \u0130ki i\u015faret\u00e7i yakla\u015f\u0131m\u0131nda, <code>len(s) - 1<\/code> -1 olaca\u011f\u0131ndan d\u00f6ng\u00fcler \u00e7al\u0131\u015fmaz ve <code>length<\/code> 0 olarak kal\u0131r.<\/p>\n<h3>Performans Tuzaklar\u0131<\/h3>\n<p>Baz\u0131 dillerde string manip\u00fclasyonlar\u0131 beklenenden daha pahal\u0131 olabilir. \u00d6rne\u011fin, Python'da string'ler immutable (de\u011fi\u015fmez) oldu\u011fu i\u00e7in, her <code>strip()<\/code> veya <code>split()<\/code> i\u015flemi yeni bir string veya liste olu\u015fturur. Bu, bellek kullan\u0131m\u0131 a\u00e7\u0131s\u0131ndan \u00f6nemlidir. E\u011fer performans kritikse ve string \u00e7ok uzunsa, iki i\u015faret\u00e7i gibi yerinde (in-place) i\u015flem yapan algoritmalar tercih edilebilir.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>\"58. Length of Last Word\" LeetCode problemi, basit g\u00f6r\u00fcnse de string manip\u00fclasyonu, k\u00f6\u015fe durumlar\u0131 ele alma ve algoritma analizi gibi temel programlama becerilerini test eden de\u011ferli bir al\u0131\u015ft\u0131rmad\u0131r. Bu makalede, problemi derinlemesine inceledik ve iki ana \u00e7\u00f6z\u00fcm yakla\u015f\u0131m\u0131n\u0131 detayland\u0131rd\u0131k: dilin sundu\u011fu string metotlar\u0131n\u0131 kullanmak ve iki i\u015faret\u00e7i tekni\u011fiyle manuel olarak string'i taramak. Her iki yakla\u015f\u0131m\u0131n da zaman karma\u015f\u0131kl\u0131\u011f\u0131 O(N) iken, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131 O(1) sabit alan karma\u015f\u0131kl\u0131\u011f\u0131 ile daha verimli bellek kullan\u0131m\u0131 sunar. M\u00fclakatlarda, hem h\u0131zl\u0131 ve okunabilir bir \u00e7\u00f6z\u00fcm sunabilmek hem de alt\u0131nda yatan mekanizmalar\u0131 ve performans farkl\u0131l\u0131klar\u0131n\u0131 a\u00e7\u0131klayabilmek \u00f6nemlidir. Bu problem, temel algoritmik d\u00fc\u015f\u00fcnme yetene\u011finizi geli\u015ftirmeniz i\u00e7in harika bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<h2>SSS (S\u0131k Sorulan Sorular)<\/h2>\n<h3>Neden bu problem s\u0131k\u00e7a sorulur?<\/h3>\n<p>Bu problem, string i\u015fleme, bo\u015fluklar\u0131 y\u00f6netme, k\u00f6\u015fe durumlar\u0131 (bo\u015f string, sadece bo\u015fluklar, sondaki bo\u015fluklar) ele alma ve temel algoritma analizi (zaman\/alan karma\u015f\u0131kl\u0131\u011f\u0131) gibi programlaman\u0131n temel ta\u015flar\u0131n\u0131 test etti\u011fi i\u00e7in s\u0131k\u00e7a sorulur. Aday\u0131n problem anlama ve farkl\u0131 yakla\u015f\u0131mlar\u0131 de\u011ferlendirme yetene\u011fini g\u00f6sterir.<\/p>\n<h3>Hangi yakla\u015f\u0131m en iyisidir?<\/h3>\n<p>Genellikle \"en iyi\" yakla\u015f\u0131m, duruma ve k\u0131s\u0131tlamalara ba\u011fl\u0131d\u0131r. E\u011fer kodun okunabilirli\u011fi ve geli\u015ftirme h\u0131z\u0131 \u00f6ncelikliyse ve bellek kullan\u0131m\u0131 \u00e7ok kritik de\u011filse, dilin haz\u0131r string metotlar\u0131n\u0131 (<code>strip()<\/code> ve <code>split()<\/code>) kullanmak daha uygun olabilir. Ancak, bellek kullan\u0131m\u0131 k\u0131s\u0131tl\u0131ysa veya daha d\u00fc\u015f\u00fck seviyeli kontrol isteniyorsa, iki i\u015faret\u00e7i yakla\u015f\u0131m\u0131 (O(1) alan karma\u015f\u0131kl\u0131\u011f\u0131) tercih edilmelidir. Performans a\u00e7\u0131s\u0131ndan her ikisi de O(N) zaman karma\u015f\u0131kl\u0131\u011f\u0131na sahiptir.<\/p>\n<h3>Bo\u015f dize durumunda ne olmal\u0131?<\/h3>\n<p>Giri\u015f string'i bo\u015fsa (<code>\"\"<\/code>) veya sadece bo\u015fluklardan olu\u015fuyorsa (<code>\"   \"<\/code>), problemin tan\u0131m\u0131na g\u00f6re son kelimenin uzunlu\u011fu 0 olmal\u0131d\u0131r. \u00c7\u00f6z\u00fcm\u00fcn\u00fcz\u00fcn bu k\u00f6\u015fe durumu do\u011fru \u015fekilde ele ald\u0131\u011f\u0131ndan emin olun.<\/p>\n<h3>String metotlar\u0131 kullanmak her zaman iyi bir fikir midir?<\/h3>\n<p>Hay\u0131r, her zaman iyi bir fikir de\u011fildir. String metotlar\u0131 genellikle daha az kodla daha fazla i\u015f yapman\u0131z\u0131 sa\u011flasa da, baz\u0131 durumlarda performans veya bellek kullan\u0131m\u0131 a\u00e7\u0131s\u0131ndan dezavantajl\u0131 olabilirler. \u00d6rne\u011fin, \u00e7ok uzun string'lerde <code>split()<\/code> metodu yeni bir string listesi olu\u015fturarak \u00f6nemli miktarda bellek t\u00fcketebilir. Ayr\u0131ca, baz\u0131 m\u00fclakatlarda, aday\u0131n string'i manuel olarak i\u015flemesini ve dilin haz\u0131r metotlar\u0131na ba\u011f\u0131ml\u0131 olmamas\u0131n\u0131 isteyen \u00f6zel k\u0131s\u0131tlamalar olabilir.<\/p>\n","protected":false},"excerpt":{"rendered":"LeetCode&#8217;un &#8220;Top Interview 150&#8221; listesinde yer alan 58. problem olan &#8220;Length of Last Word&#8221;, size verilen bir string i\u00e7indeki son kelimenin uzunlu\u011funu bulma&#8230;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-37000","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131\" \/>\n<meta property=\"og:description\" content=\"LeetCode&#039;un &quot;Top Interview 150&quot; listesinde yer alan 58. problem olan &quot;Length of Last Word&quot;, size verilen bir string i\u00e7indeki son kelimenin uzunlu\u011funu bulma...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-25T22:30:38+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131\",\"datePublished\":\"2025-12-25T22:30:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\"},\"wordCount\":2468,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\",\"name\":\"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-25T22:30:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/","og_locale":"tr_TR","og_type":"article","og_title":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131","og_description":"LeetCode'un \"Top Interview 150\" listesinde yer alan 58. problem olan \"Length of Last Word\", size verilen bir string i\u00e7indeki son kelimenin uzunlu\u011funu bulma...","og_url":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-25T22:30:38+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131","datePublished":"2025-12-25T22:30:38+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/"},"wordCount":2468,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/","url":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/","name":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-25T22:30:38+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/58-length-of-last-word-leetcode-problemi-detayli-analiz-ve-cozum-yaklasimlari\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"58. Length of Last Word LeetCode Problemi: Detayl\u0131 Analiz ve \u00c7\u00f6z\u00fcm Yakla\u015f\u0131mlar\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37000","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=37000"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/37000\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=37000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=37000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=37000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}