• Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Açıköğretim ders notu

 
#1

yönetim bilişim sistemleri bölümüne başladım ufaktan bir iki birşey paylaşayım  Smile


yeni başladım ilk senem algoritmalar ve programlama dersinden devam

Dizi ile Kuyruk Uygulaması Kuyruk veri yapısını programlarken bir diziden faydalanılabilir. Bu yöntemde, verileri tutacak bir diziye, kuyruğun başını takip edecek bir tamsayıya ihtiyaç duyulur, 
Kuyruk veri yapısının tamsayı tipinde değerleri saklayacağını varsayarsak, programda gerekli olan değişkenleri aşağıdaki gibi listeleyebiliriz: 
• int queue[N]: Kuyruktaki elemanları tutacak N uzunluğunda tamsayı dizisi
• int front: Kuyruğun başını gösteren indis 
• int rear: Kuyruğun sonunu gösteren indis 
• int count: Kuyruktaki eleman sayısı


Kuyruk Veri Yapısının Mantıksal Gösterimi.

Kuyruğa Ekleme (Enqueue)
Kuyruğun Sonu (Rear)
Kuyruğun Başı (Front)
Kuyruktan Çıkarma (Dequeue)
FIFO (First-In First-Out): Programlamada kuyruklar FIFO kuralı ile anılır. Bu ifade, “İlk Giren İlk Çıkar” şeklinde tercüme edilebilir.
2. Ünite - Diziler, Bağlı Listeler, Kuyruklar ve Yığınlar 27
tiyaç duyulur. Kuyruk veri yapısının tamsayı tipinde değerleri saklayacağını varsayarsak, programda gerekli olan değişkenleri aşağıdaki gibi listeleyebiliriz: • int queue[N]: Kuyruktaki elemanları tutacak N uzunluğunda tamsayı dizisi • int front: Kuyruğun başını gösteren indis • int rear: Kuyruğun sonunu gösteren indis • int count: Kuyruktaki eleman sayısı



Kuyruk veri yapısının dizi ile uygulanması

Kod:
#include <stdio.h>
#define N 6

int queue[N];
int front = 0, rear = 0, count = 0;

void enqueue(int a) {
     if(count == N) {
           printf(“Kuyrukta yer yoktur.\n”);
     } else {
             queue[rear] = a;
             rear ++;
             if(rear == N) rear = 0;
             count ++;
             printf(“%d kuyruga eklendi.\n”, a);
     }
}
void dequeue() {
      if(count == 0) {
            printf(“Kuyrukta eleman yoktur.\n”);
      }
       else {
             int a = queue[front];
             front ++;
             if(front == N) front = 0;
             count --;
             printf(“%d kuyruktan cikarildi.\n”, a);
      }
}




Ara
Cevapla


[-]
Hızlı Cevap

İnsan Doğrulama:
Aşağıda görünen onay kutusunu işaretleyiniz. Bu işlem otomatik spam kayıtları önlemek için kullanılır.

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Konuyu Okuyanlar:
1 Ziyaretçi

   
Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2020 MyBB Group.  



Merih Forum® bilgi paylaşım platformu. 2015-2020 Tüm hakları saklıdır.