---
title: Dizilerde Kullanılan Arama Algoritmaları
slug: dizilerde-kullanilan-arama-algoritmalari
url: /detay/dizilerde-kullanilan-arama-algoritmalari
type: article
language: Türkçe
entity:
  primary: Dizilerde Kullanılan Arama Algoritmaları
  type: article
  disambiguation: Dizilerde arama algoritmaları: Doğrusal, İkili arama ve İki İşaretçi tekniklerini öğrenin!  Verimli arama yöntemleri burada.
  categories:
    - name: Matematik
      slug: matematik
      url: /kategori/matematik
    - name: Bilişim Ve İletişim Teknolojileri
      slug: bilisim-ve-iletisim-teknolojileri
      url: /kategori/bilisim-ve-iletisim-teknolojileri
    - name: Yazılım Ve Yapay Zekâ
      slug: yazilim-ve-yapay-zeka
      url: /kategori/yazilim-ve-yapay-zeka
  tags:
    - VeriYapıları
    - İkiİşaretçiTekniği
    - İkiliArama
    - DoğrusalArama
    - AramaAlgoritmaları
    - algoritma
author: Abdulsamet Ekinci
created_at: 2025-02-13T20:29:37.946312+03:00
updated_at: 2025-04-17T12:05:13.470760+03:00
---

# Dizilerde Kullanılan Arama Algoritmaları

<!-- CONTEXT: Article Content for "Dizilerde Kullanılan Arama Algoritmaları" -->

## Article Content

Dizilerde arama algoritmaları (Searching Algorithms in Arrays) belirli bir öğeyi bulmak için kullanılan sistematik yöntemlerdir. Bu algoritmalar, verilen bir dizinin içinde belirli bir değerin olup olmadığını kontrol etmeye yönelik tasarlanmıştır. Arama işleminin verimliliği, algoritmanın yapısına ve dizinin sıralı olup olmamasına bağlıdır.

Temelde en [yaygın](/tr/detay/yaygin-748456/llms.txt) kullanılan 3 arama algoritması **Doğrusal Arama (Linear Search)**, **İkili Arama (Binary Search)** ve **İki İşaretçi Tekniği (Two Pointers Technique)'dir**. Bu algoritmaların her biri, farklı [veri](/tr/detay/veri-2/llms.txt) yapılarına ve gereksinimlere göre avantajlar ve dezavantajlar sunar.

### **Doğrusal Arama (Linear Search)**

Doğrusal arama, en basit ve en temel arama algoritmalarından biridir. Bu yöntemde, dizinin ilk elemanından başlanarak aranan öğe bulunana kadar her eleman tek tek kontrol edilir. Eğer öğe dizide bulunursa, ilgili indeks döndürülür; aksi takdirde "bulunamadı" sonucu verilir.

Bu algoritmanın **zaman karmaşıklığı O(n)** olup, büyük veri kümelerinde verimsiz olabilir. Sırasız diziler için en uygun yöntemlerden biridir.

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/13/AhJSTT1Xp59iqNi5rsnJP72OjcmbzM3R.png)
*Doğrusal Arama Adım 1 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/rWr4cmfwKEKcUrHHEBMX17aAt5i1b7FU.png)
*Doğrusal Arama Adım 3 (Kaynak: www.geeksforgeeks.org)*

#### **C++ ile Doğrusal Arama Algoritması Kod Örneği**

### **İkili Arama (Binary Search)**

İkili arama algoritması, yalnızca **sıralı dizilerde** çalışan, oldukça verimli bir arama yöntemidir. Bu [algoritma](/tr/detay/algoritma-6/llms.txt) tekniğinde dizi sürekli [sağ](/tr/detay/sag/llms.txt) veya sol yarım olacak şekilde ikiye bölünür. Algoritma, dizinin ortasındaki elemanı seçerek aranan değerle karşılaştırır. Eğer aranan [değer](/tr/detay/deger-2/llms.txt) ortadaki elemandan küçükse sol yarıda, büyükse sağ yarıda aramaya devam edilir. Sürekli ikiye bölünen sonlu bir dizide nihayetinde sağ ve sol değerlerimiz birbirine eşit olacak ve arama sonlanacaktır.

Bu [yöntem](/tr/detay/yontem-2/llms.txt), **O(log n) zaman karmaşıklığına** sahiptir ve doğrusal aramaya kıyasla çok daha hızlıdır. Ancak, dizinin sıralı olması zorunluluğu vardır.

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/2843PZK8htbhrakLOWE4CI5hstkhTPXM.png)
*İkili Arama Başlangıç Görseli (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/nCwsorzXdtewj0w4SZEXBh5JagW9RY4M.png)
*İkili Arama Adım 1 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/kIcyfm26MmGcH9vC0uSgEpTutpiiuFW4.png)
*İkili Arama Adım 2 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/WAAkRXdY43F60nnmNzU5jqIaMSQm6eWF.png)
*İkili Arama Adım 3 (Kaynak: www.geeksforgeeks.org)*

#### **C++ ile İkili Arama Algoritması Kod Örneği**

### **İki İşaretçi Tekniği (Two Pointers Technique)**

İki işaretçi tekniği, özellikle sıralı dizilerde belirli bir hedef değere ulaşmak veya belirli bir koşulu sağlamak için kullanılır. Bu yöntemde, dizinin başında ve sonunda olmak üzere iki farklı işaretçi belirlenir. İşaretçiler, belirlenen koşula göre [hareket](/tr/detay/hareket-3/llms.txt) ettirilerek istenilen sonuca ulaşılır.

Örneğin, belirli bir toplamı veren iki elemanı bulmak için bu yöntem kullanılır. İşaretçiler, toplam istenilenden büyükse sağa, küçükse sola kaydırılarak ilerletilir. **O(n) zaman karmaşıklığına** sahiptir ve büyük veri kümelerinde doğrusal aramaya göre daha verimlidir.

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/ig1Z1neBMIeS70mydLFt0OkKrmfxePWL.png)
*İki İşaretçi Tekniği Adım 1 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/3DI5f5LjoGXaAyajgm94JqQuDJn3I3pa.png)
*İki İşaretçi Tekniği Adım 2 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/IqNv25t8G5UlusYOvIy5qBmKbKzKGSCy.png)
*İki İşaretçi Tekniği Adım 3 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/ToRpM8EEJiErwwbOIFzb4H4eIu0OMNNQ.png)
*İki İşaretçi Tekniği Adım 4 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/klng8X6SlJQQbyOp2wIH3qlN6PYXMaRx.png)
*İki İşaretçi Tekniği Adım 5 (Kaynak: www.geeksforgeeks.org)*

![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/02/14/bpZYeLl09Cz8snM6x024esbFjPS7vrYN.png)
*İki İşaretçi Tekniği Adım 6 (Kaynak: www.geeksforgeeks.org)*

#### **C++ ile İkili İşaretçi Algoritması Kod Örneği**

### **Hangi Algoritma Hangi Koşullarda kullanılmalı?**

Dizilerde kullanılan arama algoritmaları, performans açısından farklı avantajlar sunar.

- **Doğrusal arama**, sırasız diziler için basit ve kolay bir yöntemdir ancak büyük veri kümelerinde verimsizdir. 
- **İkili arama**, sıralı dizilerde oldukça hızlıdır ve büyük veri kümeleri için daha uygundur. 
- **İki işaretçi tekniği**, belirli koşulları sağlayan problemlerde ekstra verimlilik sağlar.

Uygun algoritmanın seçimi, veri yapısının büyüklüğüne, sıralı olup olmamasına ve işlem gereksinimlerine bağlıdır. Optimal performans için en uygun arama algoritmasının belirlenmesi, [sistem](/tr/detay/sistem-2/llms.txt) kaynaklarının [etkin](/tr/detay/etkin/llms.txt) kullanımını sağlar.

<!-- CONTEXT: Academic Sources and References for "Dizilerde Kullanılan Arama Algoritmaları" -->

## Academic Sources and References

1. Geeksforgeeks. (2024). "Binary Search Algorithm – Iterative and Recursive Implementation"  Erişim Adresi
2. Geeksforgeeks. (2024). "Linear Search Algorithm"  Erişim Adresi
3. Geeksforgeeks. (2024). "Searching in Array". Erişim Adresi
4. Geeksforgeeks. (2024). "Two Pointers Technique" Erişim Adresi