Yığınlar ve kuyruklar
Yığın (LIFO) ve kuyruk (FIFO) veri yapılarını ve bunların uygulamalarını anlayın
Yığınlar ve kuyruklar, CoddyKit'te ücretsiz bir C Academy dersidir. Bu, 3 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C Academy kursu toplamda 3 dersten oluşur.
C'de Yığınlar ve Kuyruklar
C'de Yığınlar ve Kuyruklar
Yığınlar ve kuyruklar, verileri depolamak ve yönetmek için kullanılan doğrusal veri yapılarıdır.
Bu derste şunları öğreneceksiniz:
- Yığınların nasıl çalıştığını (LIFO - Son Giren, İlk Çıkar).
- Kuyrukların nasıl çalıştığını (FIFO - İlk Giren, İlk Çıkar).
- C'de yığın ve kuyrukların nasıl uygulanacağını.

Yığın Nedir?
Yığın Nedir?
Yığın, Son Giren, İlk Çıkar (LIFO) ilkesini izler.
İşlemler:
- Yığına ekleme - Bir öğeyi üste ekler.
- Yığından çıkarma - En üstteki öğeyi kaldırır.
- Üsttekini görüntüleme - En üstteki öğeyi kaldırmadan görüntüler.
Örnek: Yığın Uygulama
Örnek: Yığın Uygulama
Bu program, bir dizi kullanarak yığın işlemlerini gösterir.
#include <stdio.h>
#define MAX 5
int stack[MAX], top = -1;
void push(int value) {
if (top == MAX - 1) {
printf("Stack Overflow\n");
} else {
stack[++top] = value;
}
}
int pop() {
if (top == -1) {
printf("Stack Underflow\n");
return -1;
} else {
return stack[top--];
}
}
int main() {
push(10);
push(20);
printf("Popped: %d\n", pop());
return 0;
}Kuyruk Nedir?
Kuyruk Nedir?
Kuyruk, İlk Giren, İlk Çıkar (FIFO) ilkesini izler.
İşlemler:
- Kuyruğa ekleme - Bir öğeyi kuyruğun sonuna ekler.
- Kuyruktan çıkarma - Bir öğeyi kuyruğun önünden kaldırır.
- Öndekini görüntüleme - Öndeki öğeyi kaldırmadan görüntüler.
Örnek: Kuyruk Uygulama
Örnek: Kuyruk Uygulama
Bu program, bir dizi kullanarak kuyruk işlemlerini gösterir.
#include <stdio.h>
#define MAX 5
int queue[MAX], front = -1, rear = -1;
void enqueue(int value) {
if (rear == MAX - 1) {
printf("Queue Overflow\n");
} else {
if (front == -1) front = 0;
queue[++rear] = value;
}
}
int dequeue() {
if (front == -1 || front > rear) {
printf("Queue Underflow\n");
return -1;
} else {
return queue[front++];
}
}
int main() {
enqueue(10);
enqueue(20);
printf("Dequeued: %d\n", dequeue());
return 0;
}Dairesel Kuyruk
Dairesel Kuyruk
Dairesel kuyruk, boş alanları yeniden kullanarak normal kuyruğun sınırlamalarını aşar.
İşlemler aynı kalır, ancak dizi üzerinde başa dönerek devam eder.
Örnek: Dairesel Kuyruk
Örnek: Dairesel Kuyruk
Bu program, dairesel kuyruk uygulamasını gösterir.
#include <stdio.h>
#define MAX 5
int queue[MAX], front = -1, rear = -1;
void enqueue(int value) {
if ((rear + 1) % MAX == front) {
printf("Queue Overflow\n");
} else {
if (front == -1) front = 0;
rear = (rear + 1) % MAX;
queue[rear] = value;
}
}
int dequeue() {
if (front == -1) {
printf("Queue Underflow\n");
return -1;
}
int data = queue[front];
if (front == rear) {
front = rear = -1;
} else {
front = (front + 1) % MAX;
}
return data;
}
int main() {
enqueue(10);
enqueue(20);
printf("Dequeued: %d\n", dequeue());
return 0;
}Yığınların ve Kuyrukların Uygulamaları
Yığınların ve Kuyrukların Uygulamaları
Yığınlar şu amaçlarla kullanılır:
- İşlev çağrılarının yönetimi (özyineleme).
- Geri alma/yineleme işlemleri.
- İfadelerin değerlendirilmesi.
Kuyruklar şu amaçlarla kullanılır:
- İşletim sistemlerinde görevlerin zamanlanması.
- Web sunucularındaki isteklerin yönetilmesi.
- Ağ iletişiminde veri aktarımı.
Özet
Özet
Bu derste şunları öğrendiniz:
- Yığınların ve kuyrukların nasıl çalıştığını.
- Yığın ve kuyruk işlemlerinin nasıl uygulanacağını.
- Yığınların ve kuyrukların kullanım alanlarını.
Sırada C'de ağaçları ve grafları inceleyeceğiz!

Sıkça Sorulan Sorular
“Yığınlar ve kuyruklar” dersi ücretsiz mi?
Evet — “Yığınlar ve kuyruklar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C Academy kursu toplamda 3 dersten oluşur.
“Yığınlar ve kuyruklar” dersinde ne öğreneceğim?
Yığın (LIFO) ve kuyruk (FIFO) veri yapılarını ve bunların uygulamalarını anlayın C Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
C Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te C Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 2. dersidir.
“Yığınlar ve kuyruklar” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu C Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her C Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Bağlı listeler
- Yığınlar ve kuyruklar
- Ağaçlar ve graflar