{"id":30235,"date":"2025-09-25T10:30:27","date_gmt":"2025-09-25T07:30:27","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/"},"modified":"2025-09-25T10:30:27","modified_gmt":"2025-09-25T07:30:27","slug":"leetcode-704-ikili-arama-ustasi-olma-yolunda","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/","title":{"rendered":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda"},"content":{"rendered":"<p>LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda<\/p>\n<p>S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r.  Bu makalede, LeetCode&#8217;un 704. sorusu olan &#8220;\u0130kili Arama&#8221; problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz.  \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r.  Hadi ba\u015flayal\u0131m!<\/p>\n<h2>\u0130kili Arama Nedir? Temel Kavramlar\u0131 Anlamak<\/h2>\n<p>\u0130kili arama, s\u0131ral\u0131 bir dizide bir eleman\u0131n bulunmas\u0131n\u0131 sa\u011flayan bir algoritmad\u0131r.  Temel mant\u0131\u011f\u0131, dizinin ortas\u0131ndaki eleman\u0131 kontrol etmek ve aranan de\u011ferin bu elemandan b\u00fcy\u00fck m\u00fc, k\u00fc\u00e7\u00fck m\u00fc yoksa e\u015fit mi oldu\u011funa bakmakt\u0131r.  E\u011fer aranan de\u011fer ortadaki elemandan k\u00fc\u00e7\u00fckse, arama dizinin sol yar\u0131s\u0131nda devam eder; b\u00fcy\u00fckse sa\u011f yar\u0131s\u0131nda. Bu i\u015flem, aranan de\u011fer bulunana veya arama yap\u0131lacak eleman kalmayana kadar tekrarlan\u0131r.  Bu y\u00f6ntem, do\u011frusal aramaya g\u00f6re \u00e7ok daha verimlidir \u00e7\u00fcnk\u00fc her ad\u0131mda arama alan\u0131n\u0131 ikiye b\u00f6ler.  \u00d6rne\u011fin, 1 milyon elemanl\u0131 bir dizide do\u011frusal arama en k\u00f6t\u00fc durumda 1 milyon ad\u0131mda sonucu bulurken, ikili arama en k\u00f6t\u00fc durumda yakla\u015f\u0131k 20 ad\u0131mda sonucu bulabilir.  Bu performans fark\u0131, \u00f6zellikle b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in olduk\u00e7a \u00f6nemlidir.<\/p>\n<p>\u0130kili araman\u0131n temel unsurlar\u0131 \u015funlard\u0131r:  S\u0131ral\u0131 bir dizi (ya da ba\u015fka bir s\u0131ral\u0131 veri yap\u0131s\u0131), aranan de\u011fer ve arama i\u015flemini ger\u00e7ekle\u015ftirmek i\u00e7in kullan\u0131lan bir y\u00f6ntem.  Y\u00f6ntem genellikle yinelemeli (iteratif) veya \u00f6zyinelemeli (recursive) olarak uygulanabilir.  Yinelemeli yakla\u015f\u0131m genellikle daha az bellek t\u00fcketirken, \u00f6zyinelemeli yakla\u015f\u0131m baz\u0131 durumlarda daha okunabilir olabilir.  Ancak her iki y\u00f6ntem de ayn\u0131 zamanda O(log n) zaman karma\u015f\u0131kl\u0131\u011f\u0131na sahiptir, yani arama s\u00fcresi dizinin b\u00fcy\u00fckl\u00fc\u011f\u00fcn\u00fcn logaritmas\u0131yla orant\u0131l\u0131d\u0131r.<\/p>\n<h2>\u0130kili Arama Algoritmas\u0131 Nas\u0131l \u00c7al\u0131\u015f\u0131r? Ad\u0131m Ad\u0131m Uygulama<\/h2>\n<p>\u015eimdi, ikili arama algoritmas\u0131n\u0131 ad\u0131m ad\u0131m uygulayarak daha iyi anlayal\u0131m.  A\u015fa\u011f\u0131daki ad\u0131mlar, yinelemeli bir yakla\u015f\u0131m\u0131 izler:<\/p>\n<ol>\n<li><b>Ba\u015flang\u0131\u00e7:<\/b> Dizi s\u0131ral\u0131 olmal\u0131d\u0131r.  Ba\u015flang\u0131\u00e7 ve biti\u015f indekslerini (sol ve sa\u011f) belirleyin.<\/li>\n<li><b>Orta Eleman\u0131 Bulma:<\/b> Ba\u015flang\u0131\u00e7 ve biti\u015f indekslerinin ortalamas\u0131n\u0131 alarak orta eleman\u0131n indeksini bulun (<code>orta = (sol + sa\u011f) \/ 2<\/code>).<\/li>\n<li><b>Kar\u015f\u0131la\u015ft\u0131rma:<\/b> Orta eleman\u0131 aranan de\u011ferle kar\u015f\u0131la\u015ft\u0131r\u0131n:<\/li>\n<ul>\n<li>E\u011fer orta eleman aranan de\u011fere e\u015fitse, arama ba\u015far\u0131l\u0131d\u0131r ve orta indeks d\u00f6nd\u00fcr\u00fcl\u00fcr.<\/li>\n<li>E\u011fer orta eleman aranan de\u011ferden k\u00fc\u00e7\u00fckse, arama dizinin sa\u011f yar\u0131s\u0131nda (<code>sol = orta + 1<\/code>) devam eder.<\/li>\n<li>E\u011fer orta eleman aranan de\u011ferden b\u00fcy\u00fckse, arama dizinin sol yar\u0131s\u0131nda (<code>sa\u011f = orta - 1<\/code>) devam eder.<\/li>\n<\/ul>\n<li><b>Tekrarlama:<\/b> 2. ve 3. ad\u0131mlar, aranan de\u011fer bulunana veya <code>sol > sa\u011f<\/code> (arama alan\u0131 bo\u015fald\u0131\u011f\u0131nda) kadar tekrarlan\u0131r.<\/li>\n<li><b>Sonu\u00e7:<\/b> Aranan de\u011fer bulunursa, indeksi d\u00f6nd\u00fcr\u00fcl\u00fcr. Bulunmazsa, -1 gibi bir de\u011fer d\u00f6nd\u00fcr\u00fclerek araman\u0131n ba\u015far\u0131s\u0131z oldu\u011fu g\u00f6sterilir.<\/li>\n<\/ol>\n<pre><code class=\"language-javascript\">\nfunction binarySearch(nums, target) {\n  let sol = 0;\n  let sa\u011f = nums.length - 1;\n\n  while (sol <= sa\u011f) {\n    const orta = Math.floor((sol + sa\u011f) \/ 2);\n\n    if (nums[orta] === target) {\n      return orta;\n    } else if (nums[orta] < target) {\n      sol = orta + 1;\n    } else {\n      sa\u011f = orta - 1;\n    }\n  }\n\n  return -1; \/\/ Hedef bulunamad\u0131\n}\n\n\/\/ \u00d6rnek kullan\u0131m:\nconst nums = [-1,0,3,5,9,12];\nconst target = 9;\nconst index = binarySearch(nums, target);\nconsole.log(\"Hedef eleman\u0131n indeksi:\", index); \/\/ \u00c7\u0131kt\u0131: 4\n\n<\/pre>\n<p><\/code><\/p>\n<h2>\u00d6zyinelemeli \u0130kili Arama: Farkl\u0131 Bir Yakla\u015f\u0131m<\/h2>\n<p>\u0130kili arama, \u00f6zyineleme kullan\u0131larak da uygulanabilir.  Bu yakla\u015f\u0131m, fonksiyonun kendisini tekrar \u00e7a\u011f\u0131rarak problemi daha k\u00fc\u00e7\u00fck alt problemlere b\u00f6ler.  \u00d6zyinelemeli \u00e7\u00f6z\u00fcm, baz\u0131 durumlarda daha okunabilir olabilir, ancak yinelemeli \u00e7\u00f6z\u00fcme g\u00f6re daha fazla bellek t\u00fcketebilir.  A\u015fa\u011f\u0131da \u00f6zyinelemeli bir ikili arama \u00f6rne\u011fi verilmi\u015ftir:<\/p>\n<pre><code class=\"language-javascript\">\nfunction binarySearchRecursive(nums, target, sol, sa\u011f) {\n  if (sol > sa\u011f) {\n    return -1;\n  }\n\n  const orta = Math.floor((sol + sa\u011f) \/ 2);\n\n  if (nums[orta] === target) {\n    return orta;\n  } else if (nums[orta] < target) {\n    return binarySearchRecursive(nums, target, orta + 1, sa\u011f);\n  } else {\n    return binarySearchRecursive(nums, target, sol, orta - 1);\n  }\n}\n\n\/\/ \u00d6rnek kullan\u0131m:\nconst nums2 = [-1,0,3,5,9,12];\nconst target2 = 9;\nconst index2 = binarySearchRecursive(nums2, target2, 0, nums2.length - 1);\nconsole.log(\"Hedef eleman\u0131n indeksi (\u00f6zyinelemeli):\", index2); \/\/ \u00c7\u0131kt\u0131: 4\n<\/pre>\n<p><\/code><\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryolar\u0131: \u0130kili Arama Uygulamalar\u0131<\/h2>\n<p>\u0130kili arama, sadece LeetCode problemlerinde de\u011fil, ger\u00e7ek d\u00fcnyada da bir\u00e7ok uygulama alan\u0131na sahiptir.  \u00d6rne\u011fin, b\u00fcy\u00fck bir veritaban\u0131nda bir kayd\u0131 h\u0131zl\u0131 bir \u015fekilde aramak, bir s\u00f6zl\u00fckte bir kelimeyi bulmak, bir web sitesinde ikili arama a\u011fac\u0131 kullanarak h\u0131zl\u0131 bir \u015fekilde bilgi arama gibi durumlarda kullan\u0131l\u0131r.  Ayr\u0131ca, oyunlarda, grafik i\u015flemlerinde ve hatta i\u015flemci mimarisinde de ikili arama prensipleri kullan\u0131l\u0131r.  \u00d6rne\u011fin, bir web sitesinin arama fonksiyonu, kullan\u0131c\u0131n\u0131n arad\u0131\u011f\u0131 bilgiyi b\u00fcy\u00fck bir veri setinden h\u0131zl\u0131ca bulmak i\u00e7in genellikle ikili arama veya ikili arama a\u011fac\u0131 gibi verimli arama algoritmalar\u0131 kullan\u0131r.  Bu sayede, kullan\u0131c\u0131lar istedikleri bilgiye saniyeler i\u00e7inde ula\u015fabilirler.  Di\u011fer bir \u00f6rnek ise, bir havaalan\u0131ndaki bagaj takip sistemidir.  Sistem, her bir bagaj\u0131n kimlik numaras\u0131n\u0131 (s\u0131ral\u0131 bir veri yap\u0131s\u0131nda) saklar ve kullan\u0131c\u0131n\u0131n girdi\u011fi numara ile ikili arama yaparak h\u0131zl\u0131 bir \u015fekilde bagaj\u0131n yerini bulabilir.<\/p>\n<h2>\u0130leri D\u00fczey Teknikler: Performans Optimizasyonu ve S\u0131n\u0131rlamalar<\/h2>\n<p>\u0130kili araman\u0131n performans\u0131n\u0131 optimize etmek i\u00e7in birka\u00e7 ileri d\u00fczey teknik kullan\u0131labilir.  \u00d6rne\u011fin, orta eleman\u0131n indeksini hesaplamak i\u00e7in <code>(sol + sa\u011f) \/ 2<\/code> yerine <code>sol + Math.floor((sa\u011f - sol) \/ 2)<\/code> kullanmak, b\u00fcy\u00fck say\u0131larla \u00e7al\u0131\u015f\u0131rken ta\u015fma sorunlar\u0131n\u0131 \u00f6nleyebilir.  Ayr\u0131ca, ikili arama algoritmas\u0131n\u0131n yaln\u0131zca s\u0131ral\u0131 dizilerde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 unutmamak \u00f6nemlidir.  E\u011fer dizi s\u0131ral\u0131 de\u011filse, \u00f6nce diziyi s\u0131ralamak gerekir, bu da ek bir zaman maliyeti getirir.  Bu nedenle, ikili arama, \u00f6nceden s\u0131ral\u0131 verilerle \u00e7al\u0131\u015f\u0131rken en verimli sonu\u00e7lar\u0131 verir.  Ayr\u0131ca, ikili araman\u0131n performans\u0131, dizinin b\u00fcy\u00fckl\u00fc\u011f\u00fc artt\u0131k\u00e7a logaritmik olarak artar, bu da b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in olduk\u00e7a faydal\u0131d\u0131r. Daha fazla bilgi i\u00e7in <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> sitesini ziyaret edebilirsiniz.<\/p>\n<h2>Performans Kar\u015f\u0131la\u015ft\u0131rmas\u0131: \u0130kili Arama vs. Do\u011frusal Arama<\/h2>\n<p>A\u015fa\u011f\u0131daki tabloda, ikili arama ve do\u011frusal araman\u0131n performans\u0131n\u0131 kar\u015f\u0131la\u015ft\u0131ral\u0131m:<\/p>\n<table>\n<tr>\n<th>Algoritma<\/th>\n<th>Zaman Karma\u015f\u0131kl\u0131\u011f\u0131 (En K\u00f6t\u00fc Durum)<\/th>\n<th>Alan Karma\u015f\u0131kl\u0131\u011f\u0131<\/th>\n<\/tr>\n<tr>\n<td>Do\u011frusal Arama<\/td>\n<td>O(n)<\/td>\n<td>O(1)<\/td>\n<\/tr>\n<tr>\n<td>\u0130kili Arama<\/td>\n<td>O(log n)<\/td>\n<td>O(1)<\/td>\n<\/tr>\n<\/table>\n<p>G\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi, ikili arama, do\u011frusal aramaya g\u00f6re \u00e7ok daha verimlidir, \u00f6zellikle b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in.  Ancak, ikili araman\u0131n sadece s\u0131ral\u0131 dizilerde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 unutmamak \u00f6nemlidir.<\/p>\n<h2>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h2>\n<ol>\n<li><b>\u0130kili arama her zaman en iyi \u00e7\u00f6z\u00fcm m\u00fcd\u00fcr?<\/b> Hay\u0131r. \u0130kili arama, yaln\u0131zca verilerin s\u0131ral\u0131 oldu\u011fu durumlarda etkilidir. E\u011fer veriler s\u0131ral\u0131 de\u011filse, \u00f6nce s\u0131ralama i\u015flemi gerekecektir ve bu da ek bir zaman maliyeti getirir.<\/li>\n<li><b>\u0130kili arama \u00f6zyinelemeli mi yoksa yinelemeli mi olmal\u0131d\u0131r?<\/b> Her iki yakla\u015f\u0131m da ge\u00e7erlidir. Yinelemeli yakla\u015f\u0131m genellikle daha az bellek t\u00fcketirken, \u00f6zyinelemeli yakla\u015f\u0131m baz\u0131 durumlarda daha okunabilir olabilir.  Tercih genellikle programc\u0131n\u0131n tarz\u0131na ve uygulamaya ba\u011fl\u0131d\u0131r.<\/li>\n<li><b>\u0130kili arama ne kadar h\u0131zl\u0131d\u0131r?<\/b> \u0130kili araman\u0131n zaman karma\u015f\u0131kl\u0131\u011f\u0131 O(log n)'dir.  Bu, dizinin b\u00fcy\u00fckl\u00fc\u011f\u00fc artt\u0131k\u00e7a arama s\u00fcresinin logaritmik olarak artt\u0131\u011f\u0131 anlam\u0131na gelir.  Bu, b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in \u00e7ok \u00f6nemli bir performans avantaj\u0131 sa\u011flar.<\/li>\n<li><b>\u0130kili araman\u0131n s\u0131n\u0131rlamalar\u0131 nelerdir?<\/b> \u0130kili arama sadece s\u0131ral\u0131 dizilerde \u00e7al\u0131\u015f\u0131r.  Ayr\u0131ca, aranan eleman dizide yoksa, t\u00fcm diziyi aramak zorunda kalabilir, bu da yine de zaman maliyetine yol a\u00e7ar. <\/li>\n<li><b>\u0130kili aramay\u0131 nas\u0131l daha h\u0131zl\u0131 hale getirebilirim?<\/b> Orta eleman indeksini hesaplama y\u00f6ntemini optimize edebilir veya uygun bir veri yap\u0131s\u0131 se\u00e7ebilirsiniz.<\/li>\n<\/ol>\n<h2>Sonu\u00e7<\/h2>\n<p>Bu makalede, LeetCode 704: \u0130kili Arama problemine kapsaml\u0131 bir bak\u0131\u015f att\u0131k.  \u0130kili araman\u0131n temellerini, ad\u0131m ad\u0131m uygulamas\u0131n\u0131, farkl\u0131 yakla\u015f\u0131mlar\u0131n\u0131, ger\u00e7ek d\u00fcnya senaryolar\u0131n\u0131 ve performans optimizasyonunu ele ald\u0131k.  \u0130kili arama, verimlili\u011fi ile b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken \u00e7ok \u00f6nemli bir rol oynar ve programc\u0131lar\u0131n ara\u00e7 kutusunda olmas\u0131 gereken temel bir algoritmad\u0131r. Daha fazla algoritma ve veri yap\u0131s\u0131 \u00f6\u011frenmek i\u00e7in <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> adresini ziyaret edebilirsiniz.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden&hellip;","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-30235","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>LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda<\/title>\n<meta name=\"description\" content=\"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode&#039;un 704. sorusu olan &quot;\u0130kili Arama&quot; problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!\" \/>\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\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda\" \/>\n<meta property=\"og:description\" content=\"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode&#039;un 704. sorusu olan &quot;\u0130kili Arama&quot; problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-25T07:30:27+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=\"7 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda\",\"datePublished\":\"2025-09-25T07:30:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\"},\"wordCount\":1304,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\",\"name\":\"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-09-25T07:30:27+00:00\",\"description\":\"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode'un 704. sorusu olan \\\"\u0130kili Arama\\\" problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda\"}]},{\"@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":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda","description":"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode'un 704. sorusu olan \"\u0130kili Arama\" problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!","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\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/","og_locale":"tr_TR","og_type":"article","og_title":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda","og_description":"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode'un 704. sorusu olan \"\u0130kili Arama\" problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!","og_url":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-09-25T07:30:27+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"7 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda","datePublished":"2025-09-25T07:30:27+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/"},"wordCount":1304,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/","url":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/","name":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-09-25T07:30:27+00:00","description":"S\u0131ral\u0131 bir dizide belirli bir de\u011feri bulmak i\u00e7in en verimli y\u00f6ntemlerden biri ikili aramad\u0131r. Bu makalede, LeetCode'un 704. sorusu olan \"\u0130kili Arama\" problemine derinlemesine dalacak, farkl\u0131 \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 inceleyecek ve bu algoritmay\u0131 ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l uygulayabilece\u011finizi g\u00f6sterece\u011fiz. \u0130kili aramay\u0131 anlamak, programlama becerilerinizi \u00f6nemli \u00f6l\u00e7\u00fcde geli\u015ftirecek ve b\u00fcy\u00fck veri k\u00fcmeleriyle \u00e7al\u0131\u015f\u0131rken zamandan tasarruf etmenizi sa\u011flayacakt\u0131r. Hadi ba\u015flayal\u0131m!","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/leetcode-704-ikili-arama-ustasi-olma-yolunda\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"LeetCode 704: \u0130kili Arama Ustas\u0131 Olma Yolunda"}]},{"@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\/30235","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=30235"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30235\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=30235"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=30235"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=30235"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}