ÇİZGELERİN GÖSTERİMİ Yılmaz KILIÇASLAN.

Slides:



Advertisements
Benzer bir sunumlar
ÖRNEK BİR VERİTABANI TASARIMI VE NORMALİZASYONU
Advertisements

Ders İçeriği Ağaç Veri Modeli Tanım ve Gerçekleştirim İkili Ağaç
Prof.Dr.Şaban EREN Yasar Üniversitesi Fen-Edebiyat Fakültesi
Bölüm 12 ÜST DÜZEY KONULAR Dinamik Bellek Ayırma Önişlemci
KONU :GÖRÜNTÜNÜN GEOMETRİK MODELLERİNİN KURULMASI
Ders İçeriği Bağlantılı Liste İki Yönlü Bağlantılı Liste
Kofaktör Matrisler Determinantlar Minör.
MODÜLER ARİTMETİK.
TBF Genel Matematik II DERS – 8 : Çift Katlı İntegral
Graf.
Prof. Dr. Halil İbrahim Karakaş
Yapay Zeka DR.KORHAN KAYIŞLI.
ÖĞRENCİNİN; ADI: SOYADI: ÖĞETMENİN;
7. DİZİLER Diziler birçok değişkene aynı adla ulaşmayı sağlayan bir grup veri yapısıdır. Bir dizi aynı tipte ve aynı adı paylaşan bir grup değişken demektir.
En Küçük Yol Ağacı (Minimum Spanning Tree)
TBF Genel Matematik I DERS – 1 : Sayı Kümeleri ve Koordinatlar
İçerik: Graflar Tanım Gösterim Dolaşma Algoritmaları
MATRİSLER ve DETERMİNANTLAR
ÇİZGELERİN GÖSTERİMİ Yılmaz KILIÇASLAN. Sunu Planı Bu derste, çizgelerin bilgisayarda gösterimine ilişkin iki standart yaklaşımı inceleyeceğiz.
Temel Bilgisayar Yapısı ve Devreleri
Nesneye Yönelik Programlama
GRAF TEORİSİ Ders 1 TEMEL KAVRAMLAR.
MANTIK PROGRAMLAMA TEMEL YAPILARI Yılmaz KILIÇASLAN.
MATRİS-DETERMİNANT MATEMATİK.
İŞLEM TANIM: A boş olmayan bir küme olmak üzere,A×A nın bir R alt kümesinden A ya tanımlanan her fonksiyona, işlem denir.İşlemi tanımlarken,’’
PROLOG PROGRAMLAMA DİLİNDE
FONKSİYONLAR f : A B.
C PROGRAMLAMA DİZİLER (ARRAYS).
ÇİZGE KURAMI Yılmaz KILIÇASLAN.
DÜZENLİ GRAMERLER Yılmaz Kılıçaslan.
Bölüm 3: Diziler BTEP 102 – Veri Yapıları ve Programlama
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
BAZI VERİ YAPILARI Yılmaz KILIÇASLAN.
BAZI VERİ YAPILARI Yılmaz KILIÇASLAN. Sunu Planı Bu derste, çizgeler gibi bazı teorik nesnelerin bellekte nasıl tutulduğunu ve algoritmalarca nasıl işlendiğini.
ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN.
Lineer Cebir Prof.Dr.Şaban EREN
Oturum aç butonuna tıklayın. Adım 1. Kullanıcı adınızı ve şifrenizi yazın. İpucu: Eğer şifrenizi hatırlayamazsanız, ‘Şifrenizi mi unuttunuz?’ istemini.
Çizge Algoritmaları Ders 2.
Yrd. Doç. Dr. Mustafa AKKOL
SONLU ELEMANLAR DERS 4.
MANTIK BİLİMİNE GİRİŞ VE ÖNERMELER MANTIĞI Yılmaz KILIÇASLAN.
Öğretmenin; Adı Soyadı :
VLC MEDİA PLAYER.
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Prof. Dr. Halil İbrahim Karakaş
Eğİtİmde web 2.0 araçlarInIn kullanImI
BAĞINTI & FONKSİYONLAR.
ANALOG-SAYISAL BÜYÜKLÜK VE SAYI SİSTEMLERİ
Bilgisayar Grafikleri Ders 3: 2B Dönüşümler
Matrisler ( Determinant )
KISIM 1 Bilgi İşleme Teorisi
Veri yapıları Hafta3 Dizi Yapıları.
FAT VE NTFS DOSYA YAPISI
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
Bir başka ifade biçimi: Blok Diyagramları
GrafTeorisine İlişkin Bazı Tanımlar
Tanım: ( Temel Çevreler Kümesi)
Lineer Cebir (Matris).
Lineer Vektör Uzayı ‘de iki
3. Kirchhoff’un Akım Yasası (KAY)
Çizgeler Çizge G=(V,E), ikilisine denir, burada V sonlu bir kümedir, E ise bu kümenin elemanları arasında ikili bir bağıntıdır. V kümesine G çizgesinin.
GrafTeorisine İlişkin Bazı Tanımlar
Teorem 2: Lineer zamanla değişmeyen sistemi
G grafının aşağıdaki özellikleri sağlayan Ga alt grafına çevre denir:
Algoritmalar II Ders 11 Çizgeler. Çizgelerin bilgisayarda gösterimi. BFS algoritması.
Çizge Algoritmalari 5. ders.
NİŞANTAŞI ÜNİVERSİTESİ
İleri Algoritmalar Ders 3.
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

ÇİZGELERİN GÖSTERİMİ Yılmaz KILIÇASLAN

Sunu Planı Bu derste, çizgelerin bilgisayarda gösterimine ilişkin iki standart yaklaşımı inceleyeceğiz.

Ardışık ve Bağlı Gösterim Çizgeler bellekte iki şekilde saklanabilirler: Komşuluk matrisi ile (ardışık gösterim) Bağlı listeler ile (bağlı gösterim ya da komşuluk yapısı) Bellekte her ne şekilde tutulursa tutulsunlar, çizgeler bilgisayara formel tanımlarıyla, bir düğümler ve kenarlar (düğüm çiftleri) kümesi olarak verilirler.

Yoğun ve Seyrek Çizge Gösterimi m düğümlü ve n kenarlı bir G çizgesinin, m = O(n2) olması halinde, yoğun (dense) m = O(n) veya m = O(nlogn) olması halinde, seyrek (sparse) olduğu söylenir. Genelde, yoğun çizgeler için matrisler, seyrek çizgeler içinse bağlı listeler kullanılır.

Çizgelerin Komşuluk Matrisleriyle Gösterimi - 1 G’nin m düğümlü bir çizge olduğunu ve düğümlerin, örneğin v1, v2, ..., vm biçiminde, sıralandığını varsayınız. G’nin, A = [aij] komşuluk matrisi aşağıdaki gibi tanımlanmış olan m x m boyutunda bir matristir: aij = 1 (eğer vi, vj’nin komşusu ise) 0 (aksi halde)

Çizgelerin Komşuluk Matrisleriyle Gösterimi - 2 Şekil 1(b), Şekil 1(a)’daki düğümlerinin A, B, C, D, E biçiminde sıralandığı G çizgesinin komşuluk matrisini göstermektedir. Şekil 1. G’nin her {vi, vj} kenarının matriste, bir kez aij = 1 ve bir kez de aji = 1 olmak üzere, iki kez gösterildiğine ve bu nedenle komşuluk matrisinin simetrik olduğuna dikkat ediniz.

Çizgelerin Komşuluk Matrisleriyle Gösterimi - 3 Bir G çizgesinin A komşuluk matrisinin nasıl oluşturulacağı, G’nin düğümlerinin nasıl sıralandığına bağlıdır. Düğümlerin sıralanmasındaki bir değişiklik, farklı bir komşuluk matrisinin üretimine yol açar. Fakat, bu şekilde elde edilmiş iki komşuluk matrisi, basitçe satır ve sütunları değiştirmek suretiyle birbirlerinden elde edilebilirler. Diğer yandan, komşuluk matrisinin oluşumu kenarların (düğüm çiftlerinin) bilgisayara hangi sırayla verildiğine bağlı değildir. Komşuluk matrisinin gösteriminde bazı değişiklikler yapılabilir. Eğer G bir çoklu çizge ise, genellikle aij, {vi, vj} kenar sayısını belirtir. Ayrıca, eğer G ağırlıklı bir çizge ise aij, {vi, vj} kenarının ağırlığına kodlar.

Çizgelerin Bağlı Listelerle Gösterimi - 1 Bir G çizgesinin komşuluk matrisiyle gösteriminin bazı dezavantajları vardır. Her şeyden önce, G’ye düğüm eklemek ya da G’den düğüm çıkarmak zor olacaktır. Bunun nedeni, komşuluk matrisinin boyutunun değişebilecek ve düğümlerin yeniden sıralanabilecek olması ve bunların komşuluk matrisinde birçok değişikliğe yol açabilecek olmasıdır. Ayrıca, eğer G seyrek bir çizgeyse, yani kenar sayısı O(m) veya hatta O(mlogm) ise, komşuluk matrisi birçok sıfır içerek ve dolayısıyla bellek israfı çok olacaktır. Bu nedenlerden ötürü, G seyrek olması halinde bellekte bir tür bağlı listeyle tutulur.

Çizgelerin Bağlı Listelerle Gösterimi - 1 Çizgelerin bellekte bağlı listeler nasıl tutulduğunu bir örnek üzerinden açıklayalım. Aşağıdaki şekle göz atınız: Düğüm Komşuluk Listesi Şekil 2. Şekil 1(b)’deki tablonun, Şekil 1(a)’da görsel olarak tanımlanan çizgenin aynısını tanımlandığına dikkat ediniz. Tablo, her düğümün komşu düğümlerini içeren komşuluk listesini göstermektedir.

Çizgelerin Bağlı Listelerle Gösterimi - 2 Bir G çizgesinin bağlı gösterimi, G’yi bellekte komşuluk listelerini kullanarak tutar. Böyle bir gösterim, normalde iki dosya (ya da kayıt kümesi) barındırır: Düğüm Dosyası (Vertex File) ve Kenar Dosyası (Edge File).

Çizgelerin Bağlı Listelerle Gösterimi - 3 Düğüm dosyası, bir dizi ya da bağlı liste ile çizgenin düğümlerinin listesini tutar. Düğüm dosyasının kayıtları şu formda saklanır: VERTEX düğümün adıdır. NEXT-V, düğümler bağlı listeler ile tutulduğunda, düğüm dosyasında bulunan düğüm listesindeki bir sonraki düğüme işaret eder. PTR ise, kenar dosyasında bulunan düğümün komşuluk listesindeki ilk elemana işaret edecektir.

Çizgelerin Bağlı Listelerle Gösterimi - 3 Kenar dosyası, çizgenin kenarlarını barındırır. Kenar dosyası, bütün komşuluk listelerini içerecektir. Her liste bellekte bir bağlı liste ile tutulur. Kenar dosyasının her kaydı, bir komşuluk listesindeki bir düğüme ve böylelikle dolaylı yoldan çizgenin bir kenarına karşılık gelecektir. Düğüm dosyasının kayıtları şu formda saklanır: EDGE, eğer varsa, kenarın adıdır. ADJ, düğümün düğüm dosyasındaki konumuna işaret eder. NEXT, komşuluk listesindeki bir sonraki düğümün konumuna işaret eder.

Çizgelerin Bağlı Listelerle Gösterimi - 5 Şekil 3, şekil 2’deki çizgenin bellekte nasıl görüneceğini göstermektedir. Şekil 3.