From e797e9b8f68462a0a576791bd407d92e874528e4 Mon Sep 17 00:00:00 2001 From: Tunahan Turker Erturk <89503561+tunisch@users.noreply.github.com> Date: Fri, 2 Jan 2026 17:23:06 +0300 Subject: [PATCH 1/2] Add documentation for queue data structure Added a detailed explanation of queues, including their FIFO principle and methods for adding and removing elements. --- queue.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 queue.md diff --git a/queue.md b/queue.md new file mode 100644 index 0000000..161bb57 --- /dev/null +++ b/queue.md @@ -0,0 +1,12 @@ +# QUEUE + +- Queue (Kuyruk), FIFO (First in First out) (İlk giren ilk çıkar) prensibine dayanan, girişlerde ve çıkışlarda belirli bir kurala göre çalışan yapıdır. Stack de verdiğimiz örneği kuyruğa göre uyarlayalım. Biz örnekte altı kapalı bir koli kutusunu düşünmüştük. Şimdi o koli kutusunun altı yırtılmış. Sonuç olarak ne oluyor? İlk giren ilk çıkmış oluyor. +- Queue (Kuyruk)'da eleman eklemesi yaparken enqueue methodunu kullanıyoruz. Eleman silerken ise dequeue methodunu kullanıyoruz. + +image + +## References: + +1. [queue-kod-ile-anlatım](https://medium.com/@tolgahan.cepel/do%C4%9Frusal-veri-yap%C4%B1lar%C4%B1-4-kuyruk-queue-dcbd07e8ba77) +2. [queue-short-definition](https://www.educative.io/edpresso/what-is-a-queue) +3. [queue-detail-definition](https://www.studytonight.com/data-structures/queue-data-structure) From 6bc63573518cf9d02098d9fab562b8d21b097b9d Mon Sep 17 00:00:00 2001 From: Tunahan Turker Erturk <89503561+tunisch@users.noreply.github.com> Date: Fri, 2 Jan 2026 18:45:58 +0300 Subject: [PATCH 2/2] Enhance queue.md with priority queue details Updated the queue documentation to include examples and advantages of priority queues, along with usage scenarios. --- queue.md | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/queue.md b/queue.md index 161bb57..21be267 100644 --- a/queue.md +++ b/queue.md @@ -1,11 +1,38 @@ # QUEUE -- Queue (Kuyruk), FIFO (First in First out) (İlk giren ilk çıkar) prensibine dayanan, girişlerde ve çıkışlarda belirli bir kurala göre çalışan yapıdır. Stack de verdiğimiz örneği kuyruğa göre uyarlayalım. Biz örnekte altı kapalı bir koli kutusunu düşünmüştük. Şimdi o koli kutusunun altı yırtılmış. Sonuç olarak ne oluyor? İlk giren ilk çıkmış oluyor. -- Queue (Kuyruk)'da eleman eklemesi yaparken enqueue methodunu kullanıyoruz. Eleman silerken ise dequeue methodunu kullanıyoruz. +- Queue (Kuyruk), FIFO (First in First out) (İlk giren ilk çıkar) prensibine dayanan, girişlerde ve çıkışlarda belirli bir kurala göre çalışan yapıdır. Stack de verdiğimiz örneği kuyruğa göre uyarlayalım. Biz örnekte Örneğin sinema bileti almak için sıraya girmiş kişileri düşünebiliriz. İlk önce gelen kişi bileti daha önce alacaktır. +- Queue (Kuyruk)'da eleman eklemesi yaparken enqueue methodunu kullanıyoruz. Eleman silerken ise dequeue methodunu kullanıyoruz. Siradaki elemani getirmek icin ise peek methodunu kullaniyoruz. +- Queue veri yapısında, verilere iki uçtan erişim vardır. Bir uçtan eleman ekleme (enqueue), diğer uçtan eleman çıkarma (dequeue) işlemleri yapılır. Siradaki elemani getir (peek) islemleri ile yapilir. +- Queue tasarımı dizi veya bağlı liste ile yapılabilir. Bağlı liste kullanarak boyutu sabit olmayan bir queue oluşturabiliriz. Dizi kullanmak için ise sabit bir boyut belirlemeliyiz. + +## Öncelikli Kuyruk (Priority Queue) +- Bazı problemlerin çözümünde doğrudan kuyruk oluşturamayız. Örneğin uçakların inişi sırasında, acil inmesi gereken uçaklar bulunabilir. Veya muayene sırasında bekleyen hastalar için farklı bir öncelik belirlenebilir. +- Bu gibi senaryolarda öncelikli kuyruk ile çözüm üretilir. Öncelik sırası belirlenir ve program sırasında uygulanır. + +image + +- Sıradaki eleman, front olarak tuttuğumuz düğüm demektir. Dolayısıyla front düğümünün değerini return ile döndürürsek, silme işlemi uygulamadan sıradaki elemanı elde ederiz. + +**Avantajları:** + +- Geliş sırasına göre hizmet verilmesi gereken senaryolarda avantajlıdır. +- Üretici-tüketici problemlerinde fayda sağlar. +- Hastanelerde, uçakların inişinde, araç geçişlerinde öncelikli kuyruk kullanılabilir. + +**Dezavantajları:** + +- Üzerinde arama yapmak zahmetlidir. En baştan başlanıp ilerlemek gerekir. +- Kuyruğun aralarına eleman eklemek karmaşıktır. + +**Kullanım Alanları:** + +- İşletim sistemlerinde çalışma önceliği kuyruk ile yapılır. +- Ağ yazıcılarında, belgeler öncelikli kuyruk ile çalışır. +- Asansör yazılımı kuyruk ile yapılabilir. image -## References: +### References: 1. [queue-kod-ile-anlatım](https://medium.com/@tolgahan.cepel/do%C4%9Frusal-veri-yap%C4%B1lar%C4%B1-4-kuyruk-queue-dcbd07e8ba77) 2. [queue-short-definition](https://www.educative.io/edpresso/what-is-a-queue)