---
title: Dijkstra Algoritması
slug: dijkstra-algoritmasi
url: /detay/dijkstra-algoritmasi
type: article
language: Türkçe
entity:
  primary: Dijkstra Algoritması
  type: article
  disambiguation: Dijkstra Algoritması: En kısa yolu bulmak için kullanılan etkili bir grafik algoritması. Negatif ağırlıklı kenarlar hariç tüm grafiklerde çalışır.
  categories:
    - name: Yazılım Ve Yapay Zekâ
      slug: yazilim-ve-yapay-zeka
      url: /kategori/yazilim-ve-yapay-zeka
  tags:
    - Zaman Karmaşıklığı
    - Negatif Ağırlık
    - En Kısa Yol
    - Dijkstra Algoritması
    - Çizge teorisi
author: Beyza Nur Türkü
created_at: 2025-01-28T10:33:08.667004+03:00
updated_at: 2025-04-17T12:34:41.215450+03:00
---

# Dijkstra Algoritması

<!-- CONTEXT: Article Content for "Dijkstra Algoritması" -->

## Article Content

Dijkstra Algoritması, 1956 yılında Hollandalı bilgisayar bilimci Edsger W. Dijkstra tarafından geliştirilen, [çizge](/tr/detay/cizge-04fc3/llms.txt) teorisinde kullanılan bir en [kısa](/tr/detay/kisa/llms.txt) [yol](/tr/detay/yol-3/llms.txt) algoritmasıdır.**&#32;**Bu [algoritma](/tr/detay/algoritma-6/llms.txt), belirli bir başlangıç düğümünden diğer tüm düğümlere olan en kısa yolları bulmak için kullanılır. Algoritma, ağırlıklı çizgelerde (kenarların belirli bir ağırlığı olduğu durumlarda) çalışır ve negatif ağırlıklı kenarlar içermeyen çizgeler için geçerlidir.

### **Çalışma Prensibi**

Dijkstra Algoritması, açgözlü (greedy) bir yaklaşım benimser. Her adımda, o [ana](/tr/detay/ana-751169/llms.txt) kadar bilinen en kısa yolu seçer ve bu yolu genişleterek diğer düğümlere ulaşmaya çalışır. 

#### **1- Başlangıç**:

- Başlangıç düğümü belirlenir ve bu düğümün mesafesi 0 olarak ayarlanır.
- Diğer tüm düğümlere olan mesafeler sonsuz (∞) olarak başlatılır.
- Tüm düğümler ziyaret edilmemiş olarak işaretlenir.

#### **2- En Kısa Mesafeli Düğüm Seçimi**:

- Ziyaret edilmemiş düğümler arasından en küçük mesafeye sahip olan düğüm seçilir.
- Bu düğüm,**&#160;mevcut düğüm** olarak belirlenir.

#### **3- Komşu Düğümlerin Güncellenmesi**:

- Mevcut düğümün komşularına olan mesafeler hesaplanır.
- Eğer mevcut düğüm üzerinden komşu düğüme ulaşmak, daha kısa bir yol sağlıyorsa, komşu düğümün mesafesi güncellenir.
- Bu işlem, tüm komşu düğümler için tekrarlanır.

#### **4- Ziyaret Edildi İşareti**:

- Mevcut düğüm, ziyaret edildi olarak işaretlenir ve bir daha işleme alınmaz.

#### **5- Tekrar**:

- Tüm düğümler ziyaret edilene kadar 2. ve 3. adımlar tekrarlanır.

#### **6- Sonuç**:

- Algoritma tamamlandığında, başlangıç düğümünden diğer tüm düğümlere olan en kısa yollar bulunmuş olur.


![Image](https://cdn.kureansiklopedi.com/media/uploads/2025/01/28/2rDWxjQvHgUWaObkuSO71mg9LwaFYk9d.png)
*Dijkstra Algoritması çizgesi*

### **Zaman Karmaşıklığı**

Dijkstra Algoritması'nın [zaman](/tr/detay/zaman-2/llms.txt) karmaşıklığı, kullanılan [veri](/tr/detay/veri-2/llms.txt) yapısına bağlıdır:

- **Dizi kullanıldığında**: O(V2)
- **Öncelik kuyruğu (min-heap) kullanıldığında**: O((V+E)log⁡V)

Burada *V&#160;*[düğüm](/tr/detay/dugum-749841/llms.txt) sayısını, *E* ise kenar sayısını temsil eder.

### **Sınırlamalar**

- **Negatif Ağırlıklı Kenarlar**: Dijkstra Algoritması, negatif ağırlıklı kenarlar içeren çizgelerde doğru sonuç vermez. Bu tür durumlarda Bellman-Ford Algoritması kullanılabilir.
- **Yönlü Çizgeler**: Algoritma, hem yönlü hem de yönsüz çizgelerde çalışır.

Dijkstra Algoritması, özellikle yol bulma, ağ yönlendirme ve coğrafi [bilgi](/tr/detay/bilgi-4/llms.txt) sistemleri [gibi](/tr/detay/gibi-749510/llms.txt) alanlarda [yaygın](/tr/detay/yaygin-748456/llms.txt) olarak kullanılır.

<!-- CONTEXT: Academic Sources and References for "Dijkstra Algoritması" -->

## Academic Sources and References

1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to Algorithms (3rd ed.). MIT Press.
2. Programiz. Dijkstra's Algorithm.
3. Çömez, E. Dijkstra Algoritması.