MAT223 AYRIK MATEMATİK

Benzer belgeler
MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

A GRUBU Noktaları adlandırılmış K 6 tam çizgesinin tam olarak 3 noktalı kaç tane alt çizgesi vardır? A) 9 B) 20 C) 24 D) 60 E) 160

MAT223 AYRIK MATEMATİK

2. K 6 tam çizgesinde kaç farklı mükemmel eşleme vardır? 4. Düzlemsel kodu (planar code) olan ağacın kaç köşe noktası vardır?

SORULAR. 2. Noktaları adlandırılmamış 6 noktalı kaç ağaç vardır? Çizerek cevaplayınız.

A GRUBU Her bir yüzü düzgün beşgen olan düzgün 12-yüzlünün kaç ayrıtı vardır? A) 30 B) 24 C) 12 D) 36 E) 48

MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

SINAV YÖNERGESİ. Numarası : CEVAP. Adı Soyadı : ANAHTARI A) 512 B) 513 C) 256 D) 1024 E) 1025 A) 252 B) 256 C) 3024 D) 126 E) =?

3. Herhangi bir G çizgesi için aşağıdaki önermelerden hangi(ler)si her zaman doğrudur?

MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

T.C. ANADOLU ÜNİVERSİTESİ FEN FAKÜLTESİ MATEMATİK BÖLÜMÜ ÇİZGELERİ BOYAMAK HAZIRLAYAN FERHAN ÇİFTCİ DANIŞMAN Doç. Dr.

MAT223 AYRIK MATEMATİK

köşe (vertex) kenar (edg d e)

MAT223 AYRIK MATEMATİK

= 646 ] (n+2) 2 1 = n 2 + 4n+4 1 = (n 2 1)+4(n+1) MAT223 AYRIK MATEMATİK DERSİ 2.ARA SINAVI ÇÖZÜMLER

13.Konu Reel sayılar

MAT223 AYRIK MATEMATİK

ÇİZGE KURAMI KESİKLİ MATEMATİKSEL YAPILAR GÜZ

Sevdiğim Birkaç Soru

10. DİREKT ÇARPIMLAR

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

Ders 8: Konikler - Doğrularla kesişim

Graf Veri Modeli. Düğümler kümesi. Kenarlar kümesi

Ders 2: RP 1 ve RP 2 - Reel izdüşümsel doğru ve

İç-Çarpım Uzayları ÜNİTE. Amaçlar. İçindekiler. Yazar Öğr. Grv. Dr. Nevin ORHUN

2. Aşağıdaki pseudocode ile verilen satırlar işletilirse, cnt isimli değişkenin son değeri ne olur?

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

Özdeğer ve Özvektörler

MAT223 AYRIK MATEMATİK

Cebir 1. MIT Açık Ders Malzemeleri

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

8. HOMOMORFİZMALAR VE İZOMORFİZMALAR

için doğrudur. olmak üzere tüm r mertebeli gruplar için lemma nın doğru olduğunu kabul edelim. G grubunun mertebesi n olsun. ve olsun.

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

Kareköklü Sayılar. sayısını en yakın onda birliğe kadar tahmin edelim.

İleri Diferansiyel Denklemler

1.4. KISMİ SIRALAMA VE DENKLİK BAĞINTILARI

Çizgeler (Graphs) Doç. Dr. Aybars UĞUR

10.Hafta Minimum kapsayan ağaçlar Minimum spanning trees (MST)

Temel Kavramlar 1 Doğal sayılar: N = {0, 1, 2, 3,.,n, n+1,..} kümesinin her bir elamanına doğal sayı denir ve N ile gösterilir.

Ders 10: Düzlemde cebirsel eğriler

kavramını tanımlayıp bazı özelliklerini inceleyeceğiz. Ayrıca bir grup üzerinde tanımlı

0.1 Küme Cebri. Teorem 1 A ve B iki küme olmak üzere i) (A B) c = A c B c ii) (A B) c = A c B c

KAREKÖKLÜ SAYILAR. a) 15 h) 18 b) 32 ı) 49 c) 81 i) 72 d) 27 j) 36 e) 9 k) 121 f) 45 l) 256 g) 25 m) 152

VEKTÖR UZAYLARI 1.GİRİŞ

3.3. İki Tabanlı Sayı Sisteminde Dört İşlem

2. (x 1 + x 2 + x 3 + x 4 + x 5 ) 10 ifadesinin açılımında kaç terim vardır?

1 BAĞINTILAR VE FONKSİYONLAR

Ç.Ü Fen ve Mühendislik Bilimleri Dergisi Yıl:2012 Cilt:28-2

MAT355 Kompleks Fonksiyonlar Teorisi I Hafta 3

TAMSAYILI PROGRAMLAMA

VERİ YAPILARI. GRAPH LAR Düzce Üniversitesi Teknoloji Fakültesi ÖĞR.GÖR.GÜNAY TEMÜR 1

Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR

Tanım 2.1. X boş olmayan bir küme olmak üzere X den X üzerine bire-bir fonksiyona permütasyon denir.

Ayrık Fourier Dönüşümü

Bu tanım aralığı pozitif tam sayılar olan f(n) fonksiyonunun değişim aralığı n= 1, 2, 3,, n,

8.SINIF CEBirsel ifadeler

UYGUN MATEMATİK 5 SORU BANKASI. HAZIRLAYANLAR Fatih KOCAMAN Meryem ER. : Sad k Uygun E itim Yay nlar. : Yaz n Matbaas / stanbul

Otomata Teorisi (BİL 2114)

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

11.Konu Tam sayılarda bölünebilme, modüler aritmetik, Diofant denklemler

( ) (, ) Kombinasyon. Tanım: r n olmak üzere n elemanlı bir kümenin r elemanlı her alt kümesine bu n elemanın r li kombinasyonu denir.

XII. Ulusal Matematik Olimpiyatı Birinci Aşama Sınavı

PERMÜTASYON, KOMBİNASYON. Örnek: Örnek: Örnek:

Graflar - Çizgeler. Ders 9. Graflar ve Tanımlar

MAT223 AYRIK MATEMATİK

Boyut: Belirli bir doğrultuda ölçülmüş bir büyüklüğü ifade etmek için kullanılan geometrik bir terim.

8.Konu Vektör uzayları, Alt Uzaylar

İleri Diferansiyel Denklemler

İleri Diferansiyel Denklemler

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

B Ö L Ü M. ve kitaplar yayınlamış olan bir bilim adamıdır. 2 JULIUS WILHELM RICHARD DEDEKIND ( ), Gauss un öğrencilerinden biridir.

TEMEL KAVRAMLAR. SAYI KÜMELERİ 1. Doğal Sayılar

Leyla Bugay Doktora Nisan, 2011

Nesbitt Eşitsizliğine Farklı Bir Bakış

7. BÖLÜM İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI İÇ ÇARPIM UZAYLARI .= Genel: Vektörler bölümünde vektörel iç çarpım;

B03.10 Algoritmalari Uygulamak : Durum 3 (Yuvalı Kontrol Yapıları) Şimdi başka bir problem üzerinde çalışalım.

YZM 2116 Veri Yapıları

Matematik Öğretiminde Açık-uçlu Problemler. Yrd. Doç. Dr. Nuray Çalışkan Dedeoğlu İlköğretim Matematik Eğitimi

b) Algoritmanızın en kötü durumda işlem zamanını asimptotik olarak bulunuz

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

Lineer Denklem Sistemleri

Lineer Bağımlılık ve Lineer Bağımsızlık

ÜNİTE MATEMATİK-1 İÇİNDEKİLER HEDEFLER ÜSTEL VE LOGARİTMA FONKSİYONLARI. Prof.Dr.Ahmet KÜÇÜK. Üstel Fonksiyon Logaritma Fonksiyonu

( a, b ) BAĞINTI, FONSİYON, İŞLEM SIRALI İKİLİ :

Tanım 8.1.1:Bir T (serbest) ağacı aşağıdaki özelliğisağlayan bir basit çizgedir: Tçizgesindeiki köşevvewise, bu durumdavd köşesinden w köşesine tek

Cahit Arf Matematik Günleri 10

KÜMELER ÜNİTE 1. ÜNİTE 1. ÜNİTE 1. ÜNİTE 1. ÜNİT

İleri Diferansiyel Denklemler

Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir.

2. SİMETRİK GRUPLAR. Tanım 2.1. X boş olmayan bir küme olmak üzere X den X e birebir örten fonksiyona permütasyon denir.

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

16. ULUSAL ANTALYA MATEMATİK SORULARI A A A A A A A

Konu Anlatımı Açık Uçlu Sorular Çoktan Seçmeli Sorular Doğru Yanlış Soruları Boşluk Doldurmalı Sorular Çıkmış Sorular

MAT223 AYRIK MATEMATİK

MIT Açık Ders Malzemeleri Bu materyallerden alıntı yapmak veya Kullanım Koşulları hakkında bilgi almak için

Transkript:

MAT223 AYRIK MATEMATİK Ağaçlar 8. Bölüm Emrah Akyar Anadolu Üniversitesi Fen Fakültesi Matematik Bölümü, ESKİŞEHİR 2014 2015 Öğretim Yılı

Ağacın Tanımı Ağaçlar Ağacın Tanımı Tanım Döngüsü olmayan tekparça G = (V, E) çizgesine ağaç denir. Bu tanıma göre aşağıdaki bazı çizgeleri ağaçlara örnek olarak verebiliriz. Döngüsü olmayan çizgelere ise orman denir. Açıktır ki, ağaç tekparça bir ormandır. Yukarıdaki ağaçların tümünü tek bir çizge gibi düşünürsek bu çizge bir orman olur. 2/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağacın Tanımı Ağacın tanımındaki iki özellik yardımıyla Ağacın çok fazla sayıda kenar bulundurmadığını söyleyebiliriz (döngü içermiyor). Ağacın çok az sayıda kenar bulundurmadığını da söyleyebiliriz (tekparça). Aşağıdaki teorem, ağaçların minimal tekparça ya da maksimal döngü içermeyen çizge olarak karakterize edilebileceğini ifade eder. Teorem Bir G çizgesinin bir ağaç belirtmesi için gerek ve yeter koşul, G nin tekparça olması ancak, herhangi bir kenarı çıkarıldığında tekparça olmamasıdır. Bir G çizgesinin bir ağaç belirtmesi için gerek ve yeter koşul G nin döngü içermemesi ancak, yeni bir kenar eklendiğinde döngü içermesidir. 3/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağacın Tanımı Kanıt. Teoremin sadece ilk kısmını kanıtlayacağız. İkinci kısmı da benzer olarak kanıtlanır. ( ) G çizgesi bir ağaç olsun. Bu durumda ağacın tanımından G tekparça olur. Geriye G den bir kenar çıkarıldığında tekparça olmadığını göstermek kalır. Tersine, kabul edelim ki G den bir uv kenarı çıkarıldığında geriye kalan G alt çizgesi tekparça olsun. Bu durumda G içinde u ve v noktalarını birleştiren bir P yolu var demektir. Tekrar uv kenarını G çizgesine eklersek, G de u ve v noktalarını birleştiren P ve uv gibi iki farklı yol elde edileceğinden, G bir döngü içerir. Bu ise G nin ağaç olması ile çelişir. O halde varsayımımız hatalıdır, G çizgesinden bir kenar çıkarıldığında tekparça olamaz. 4/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağacın Tanımı ( ) Koşullar sağlansın G ağaç mı? G tekparça olarak verildiğinden geriye G nin bir döngü bulundurmadığını göstermek kalır. Yine tersine, kabul edelim ki G bir döngü bulundursun. O zaman bu döngüye ait kenarlardan birini silersek elde edilen çizge hala tekparça olur. Bu ise verilen koşul ile çelişeceğinden G de bir döngü olamaz. 5/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Ağacın Tanımı Nokta sayısı n olan tekparça bir çizge verilsin. Bu çizgenin bir e kenarı silindiğinde geriye kalan çizge tekparça olabilir de olmayabilir de. Eğer tekparça değilse, bu şekildeki e kenarına ayıran kenar (cut edge) denir. Yukarıdaki teoremden bir ağacın her kenarının ayıran kenar olduğunu söyleyebiliriz. Verilen tekparça bir G çizgesinin ayıran kenar olmayan kenarları silinerek bir ağaç elde edilebilir. Bu şekilde elde edilen ağaca G çizgesinin doğurduğu/ürettiği ağaç (spanning tree) denir. G G nin doğurduğu ağaçlar 6/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağacın Tanımı Çoğu zaman noktalarından biri özel olan ağaçlar çalışılır. Bu özel olarak seçilen noktaya kök (root) denir. Verilen bir ağacın herhangi bir noktası kök olarak seçilirse, bu ağaca köklü ağaç denir. G köklü bir ağaç ve r noktası da G nin kökü olsun. G ağacının r noktasından farklı olan bir v noktasını ele alalım.v ile r noktasını birleştiren yolda v noktasının komşusu olan noktaya v noktasının babası denir. Not: Açıktır ki, bir ağaçta herhangi iki düğümü birleştiren bir tek yol vardır (Alıştırma 8.1.3). v noktasının diğer komşu noktalarına ise, v nin çocukları denir. G çizgesinin çocuğu olmayan noktalarına G nin yaprakları denir. Bir başka ifadeyle, ağacın derecesi 1 olan noktalarına ağacın yaprakları denir. Açıktır ki, r noktasının babası yoktur. Ancak, r nin her komşusu r nin çocuğu olur. 7/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Nasıl Büyür? Ağaçlar Ağaçlar Nasıl Büyür? Aşağıdaki teorem ağaçların en önemli özelliklerinin birinden söz etmektedir. Teorem En az iki noktası olan bir ağacın, derecesi 1 olan en az iki noktası vardır. Bir başka ifadeyle en az iki noktası olan bir ağacın en az iki yaprağı vardır. Kanıt. Ağacı G ile gösterelim. G ağacındaki en uzun yollardan birini biri alalım (en uzun yol tek olmayabilir). Bu yol u noktasında başlayıp v noktasında bitsin. Bu durumda u ile v noktalarının derecesi 1 olmak zorundadır (aksi halde seçilen yol en uzun yol olmazdı). Böylece kanıt biter. 8/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Nasıl Büyür? Alıştırma (8.5.4) Noktalarından birinin derecesi d olan bir ağacın en az d tane yaprağı olduğunu kanıtlayınız. Bir T ağacının derecesi d olan noktasını u ile gösterelim. Eğer u noktasını silersek, d tane tekparça alt çizge elde ederiz (tekparça bileşeni). Bu bileşenler ya tek noktadır ya da en az iki noktası olan ağaçlardır. Eğer bunlar en az iki noktası olan ağaçlar ise biliyoruz ki, nokta sayısı en az iki olan bir ağaçta en az iki yaprak vardır (Teorem 8.2.1). Eğer bunlar tek nokta ise o zaman bu noktalar zaten T ağacının yaprakları olur. O halde d tane bileşenin her biri en az bir yaprak içerdiğinden, T de en az d yaprak içerir. 9/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Nasıl Büyür? Gerçek hayatta ağaçlar yeni sürgünler vererek büyürler. Çizge ağaçlar da aşağıda anlatılan yöntemle gerçek ağaçlara benzer şekilde büyürler. Tree Growing Procedure Teorem 1. Adım G çizgesi tek nokta olsun. 2. Adım G çizgesine yeni bir nokta ekle. Bu yeni noktayı G nin herhangi bir noktası ile birleştir. Elde edilen çizgeyi yine G ile gösterelim. 2. Adımı istenilen kadar tekrar edelim. Yukarıdaki yöntem ile elde edilen her çizge bir ağaç belirtir ve her ağaç bu şekilde elde edilebilir. Bu şekilde elde edilen bir çizgenin ağaç olduğunu göstermek kolaydır. Başlangıçtaki tek noktadan oluşan çizge bir ağaçtır. Bundan sonra çizgeye her seferinde yeni bir nokta eklemekle elde edilen çizge de bir ağaç olur. Çünkü, yöntem gereği elde edilen çizgeler tekparçadır ve döngü içermez. 10/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Nasıl Büyür? Şimdi her ağacın bu yöntemle elde edilebileceğini kanıtlayalım. Kanıtı tümevarım yöntemi ile yapalım: Eğer G nin nokta sayısı 1 ise, 1. adımla bu ağaç elde edilebilir. Şimdi G nin en az 2 noktasının olduğunu kabul edelim. Bu durumda G nin derecesi 1 olan en az iki noktası vardır. v noktası G nin derecesi 1 olan noktalarından biri olsun. v noktasını ve bu noktanın uç nokta olduğu kenarı silelim ve elde edilen çizgeyi G ile gösterelim. G nün herhangi iki noktası G deki bir yol ile birleştirilebildiğinden G tekparçadır (v nin derecesi 1 olduğundan bu yol v den geçmez. Yani, v yi çıkarmak bir sorun oluşturmaz). Ayrıca, G döngü içermediğinden G de döngü içermez. O halde G çizgesi bir ağaçtır. Tümevarım hipotezi: G den daha az sayıda noktası olan her çizge bu yöntemle elde edilebilsin. Dolayısıyla G de bu yöntemle elde edilebilsin. G çizgesine 2. adımda v noktasını ekleyerek, G çizgesini elde edebileceğimizden kanıt tamamlanır. 11/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Nasıl Büyür? Tree Growing Procedure ile ağaçların birçok özelliğini elde etmek mümkündür. Aşağıdaki teorem ile verilen özellik bunlar içinde belki de en önemlisidir. Teorem Nokta sayısı n olan bir ağacın n 1 tane kenarı vardır. Kanıt. Yukarıdaki yönteme göre her ağaç tek noktadan (0 tane kenar) başlanarak, her seferinde 1 nokta ve 1 kenar eklenerek elde edilebildiğine göre n noktalı bir ağaç n 1 kenar eklenerek elde edilebilir. Böylece kanıt biter. 12/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

ın Sayısı Ağaçlar Ağaçların Sayısı Bu dersin başından beri her türlü şeyin sayısını hesapladık. Bu durumda şu soruyu sormak gayet doğaldır: Soru Nokta sayısı n olan kaç tane ağaç vardır Cevap Duruma göre değişir! Bu iki ağaç aynı mı? 13/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçların Sayısı Eğer noktaları şehirler, kenarları da bu şehirler arasındaki yollar şeklinde düşünürsek yukarıda verilen iki ağaç birbirinden farklı olur (Birinde iki şehir arasında yol varken diğerinde aynı şehirler arasında yol yok). Noktaları adlandırılmış ağaç! Eğer noktaları adlandırmadan tüm noktaları aynı kabul edersek iki ağaç aynı olur (Noktaların yerlerini değiştirebiliriz). Noktaları adlandırılmamış ağaç! Eğer iki çizgenin (ağacın) noktaları arasında birebir bir eşleme varsa öyle ki, iki noktayı birleştiren bir kenar varsa eşlenen noktalar arasında da bir kenar olacak ve tersi de doğru olacak. Bu durumda bu iki çizgeye izomorf çizgeler denir. 14/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçların Sayısı Alıştırma (8.3.2) Noktaları adlandırılmış, n noktalı kaç farklı yıldız ağaç vardır? Yol vardır? Yıldız ağaçta yaprak olan noktaların kendi arasında yer değiştirmesi ağacı değiştirmez. Sadece merkezdeki nokta değiştiğinde farklı ağaçlar elde edilir. Merkezdeki nokta için n tane seçenek olduğundan cevap n olur. 4 3 2 6 1 3 7 8 6 5 0 1 4 0 2 1 0 2 6 7 8 5 7 8 Aynı ağaç! 5 3 4 Nokta sayısı n olan yol üzerindeki noktalar n! farklı şekilde sıralanabilir. Ancak, u 1 u 2 u 3...u n 1 u n yolu ile u n u n 1...u 3 u 2 u 1 yolu aynı ağacı verir. O halde cevap n! 2 olur. 15/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçların Sayısı Aşağıdaki teorem noktaları adlandırılmış ağaçların sayısını vermektedir. Teorem (Cayley Teoremi, 1889) Nokta sayısı n olan n n 2 tane noktaları adlandırılmış ağaç vardır. Formül gayet basit gözükmesine karşın, teoremin kanıtı çok da kolay değildir. Teoremin anlaşılır bir kanıtını verebilmek için önce ağaçların bilgisayarın belleğinde en az yer kaplayacak şekilde nasıl saklanabileceğini inceleyeceğiz. Daha sonra buradan çıkaracağımız sonuçlar ile teoremin kanıtını vereceğiz. 16/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Soru Aşağıdaki ağacı bilgisayarın belleğinde nasıl saklayabiliriz? 7 8 9 3 0 2 6 4 1 5 Elbette bu sorunun cevabı ağaç ile ilgili hangi bilgileri saklayacağımıza ve bu bilgileri hangi sıklıkta kullanacağımıza göre değişir. Ağaçları bilgisayarın belleğinde en az yer kaplayacak şekilde saklamak istiyoruz. 17/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 1. Yöntem: Nokta sayısı n olan G çizgesini ele alalım. İlk akla gelen yöntem n tane satırı ve n tane sütunu olan bir tablo yapmak ve eğer çizgenin i. ve j. noktaları arasında bir kenar varsa tablonun (i, j). bileşenine 1, aksi taktirde 0 yazmaktır. Örneğin, az önceki ağacı aşağıdaki tablo/matris ile gösterebiliriz. 1. 2. 3. 4. 5. 6. 7. 8. 9. 0. 1. 0 0 0 0 0 1 0 0 0 0 7 8 2. 0 0 0 1 0 1 0 0 1 1 3. 0 0 0 0 0 0 0 0 0 1 9 4. 0 1 0 0 0 0 0 0 0 0 1 5. 0 0 0 0 0 1 0 0 0 0 3 0 2 6 6. 1 1 0 0 1 0 0 0 0 0 5 7. 0 0 0 0 0 0 0 0 1 0 4 8. 0 0 0 0 0 0 0 0 1 0 9. 0 1 0 0 0 0 1 1 0 0 0. 0 1 1 0 0 0 0 0 0 0 Bu yöntemle n noktalı bir ağacı bellekte saklamak için n 2 bit gerekir. 18/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 1. 2. 3. 4. 5. 6. 7. 8. 9. 0. 1. 0 0 0 0 0 1 0 0 0 0 2. 0 0 0 1 0 1 0 0 1 1 3. 0 0 0 0 0 0 0 0 0 1 4. 0 1 0 0 0 0 0 0 0 0 5. 0 0 0 0 0 1 0 0 0 0 6. 1 1 0 0 1 0 0 0 0 0 7. 0 0 0 0 0 0 0 0 1 0 8. 0 0 0 0 0 0 0 0 1 0 9. 0 1 0 0 0 0 1 1 0 0 0. 0 1 1 0 0 0 0 0 0 0 (Adjacency Matrix) Köşegen üzerindekiler daima 0 olacaktır. Bu nedenle bunları saklamaya gerek yok. i. nokta ile j. nokta arasında bir kenar varsa, j. nokta ile i. nokta arasında da kenar vardır. Yani matris simetrik! O halde sadece köşegenin altında ya da üstünde kalan parça yeterlidir. Böylece bu yönteme göre n noktalı bir ağacı saklamak için, bit yeterlidir. 1+2+ +(n 1) = (n 1)n 2 = n2 n 2 19/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 2. Yöntem: Noktaları saklamayıp, sadece kenarları saklayabiliriz. Örneğin, 7 8 9 3 0 2 6 4 1 5 7 8 9 6 3 0 2 6 6 9 9 2 2 0 2 4 1 5 Böylece 1. yöntemdeki gibi n satır kullanmak yerine sadece 2 satır kullandık. Nokta sayısı n olan bir ağacın kenar sayısı n 1 olduğundan n 1 tane sütun gereklidir. Ancak, bu kez 0 ve 1 ler (bit) yerine 0 ile n 1 arasındaki tamsayıları kullandık. 20/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Hatırlatma Bir n pozitif tamsayısını ikilik sistemde yazmak için log 2 n +1 bit gerekir. O halde bu yönteme göre n noktalı bir ağacı bellekte saklamak için bit gerekir. Yeterince büyük n sayıları için 2 (n 1) ( log 2 n +1) 2 (n 1) ( log 2 n +1) < n2 n 2 olur. Bu yazım şekli tek değildir (Önce hangi kenarın yazılacağı ya da bir kenar yazılırken kenarın hangi uç noktasının üstte hangisinin altta yazılacağı belli değil). Ancak, belli kurallar ile bu yazım şeklinde tek türlü hale getirebiliriz (Örneğin, küçükten büyüğe sıralama, vb). 21/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 3. Yöntem: (Father Code) Bu yöntemde 0. noktayı kök olarak kabul edeceğiz. 2. Yönteme benzer olarak yine sadece kenarları listeleyeceğiz. Ancak, bu sefer bir kenarı yazarken üste o kenarın kökten uzakta olan uç noktasını, alta ise kenarın köke yakın olan uç noktasını yazacağız. Yani, alt satırdakiler üst satırdakilerin babası olacak. Kenarları da kendi içerisinde üst satırdaki sayılara göre sıralayacağız. Örneğin, 7 8 9 3 0 2 6 4 1 5 Çocuk Baba 1 2 3 4 5 6 7 8 9 6 0 0 2 6 2 9 9 2 22/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Bu yönteme göre, 0 üst satırda bulunmaz (Kökün babası yok). 0 hariç tüm noktalar üst satırda bulunmak zorundadır (Kök hariç hepsinin babası var). Üst satırda hiç bir rakam iki kez bulunmaz (Tüm noktaların bir tek babası var). Böylece, n noktalı bir ağaçta üst satır 1, 2, 3,..., n 1 sayılarından oluşmak zorunda (yani sabit). O zaman ağacı saklamak için sadece alttaki satır yeterli olur. Yani 0 ile (n 1) arasındaki n 1 tane tamsayıyı saklamak yeterlidir. Bunun için ise (n 1) ( log 2 n +1) bit gereklidir. Ne yazık ki her ağaca karşılık böyle bir kod yazabilmemize karşın, böyle her kod bir ağaç belirtmeyebilir. 23/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Alıştırma (8.4.1) Aşağıda verilenlerden hangileri bir ağaç için geçerli bir father code olur? (0,1,2,3,4,5,6,7) 1 2 3 4 5 6 7 8 (çocuklar) 0 1 2 3 4 5 6 7 (babaları) (0,0,0,0,0,0,0,0) 0 1 2 3 4 5 6 7 8 (Yol!) 1 2 3 4 5 6 7 8 0 0 0 0 0 0 0 0 5 0 1 4 3 2 6 7 8 24/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Alıştırma (8.4.1) (7,6,5,4,3,2,1,0) 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 0 Bir ağaç belirtmez! (2,3,1,2,3,1,2,3) Kök nerede? Ağaç belirtmez! 1 2 3 4 5 6 7 8 2 3 1 2 3 1 2 3 25/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 4. Yöntem: (Prüfer Code) Bu yöntem 3. Yöntemin iyileştirilmesidir. 0 yine kök olsun. Bu yöntemle noktaları adlandırılmış, n noktalı ağacı n 1 yerine n 2 tane 0, 1,..., n 1 tamsayılarından oluşan dizilerle ilişkilendireceğiz. Bu yöntemin en önemli yanı bu tür diziler ile n noktalı, noktaları adlandırılmış ağaçlar arasında birebir bir eşleme sunmasıdır. Bu durumda n noktalı noktaları adlandırılmış ağaçların sayısı olur (Cayley Teoremi).... }{{} = n n 2 n 2 tane 26/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Yine ağacın kenarlarını önceki yöntemde olduğu gibi üst satırda çocuklar, alt satırda ise babaları olacak şekilde yazalım. Ancak, bu sefer kenarları sıralarken büyüklüklerine göre sıralamayacağız. Sıralamayı şu kurala göre yapacağız: Derecesi 1 olan ve kökten farklı olan noktalardan en küçük olanını seç ve babasıyla birlikte yaz. Daha sonra bu noktayı ve kenarı silerek birinci adıma geri dön. 7 8 7 8 7 8 9 3 0 2 6 4 1 5 1 6 9 3 0 2 6 4 5 1 3 6 0 9 0 2 6 4 5 1 3 4 6 0 2 7 8 7 8 9 0 2 6 5 1 3 4 5 6 0 2 6 9 0 2 6 1 3 4 5 6 6 0 2 6 2 27/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 0 2 7 8 9 1 3 4 5 6 7 6 0 2 6 2 9 0 2 9 8 1 3 4 5 6 7 8 6 0 2 6 2 9 9 0 2 9 1 3 4 5 6 7 8 9 6 0 2 6 2 9 9 2 0 2 1 3 4 5 6 7 8 9 2 6 0 2 6 2 9 9 2 0 (Extended Prüfer Code) En sona kök olan nokta kalacağı için alt satırın son terimi daima 0 olur. Lemma Prüfer dizisinin ikinci satırı birinci satırını belirler. Lemmanın kanıtını yapmadan önce birkaç örnek ile sadece ikinci satır verildiğinde extended Prüfer code un nasıl bulunacağını görelim. 28/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Alıştırma (0, 1, 0, 3) Prüfer dizisine karşılık gelen ağacı çiziniz. Prüfer dizisi n 2 tane tamsayıdan oluştuğuna göre, bu ağaç 6 noktalıdır. Verilen diziye göre ağacın noktalarının dereceleri aşağıdaki gibidir: Noktalar 0 1 2 3 4 5 Dereceleri 3 2 1 2 1 1 Yukarıdaki tabloya göre derecesi 1 olan en küçük nokta 2 dir. Tersten gidersek, ilk silinen nokta 2 noktasıdır. 2 4 0 1 0 3 0 Şimdi kalan noktaların dereceleri aşağıdaki gibi olur: Noktalar 0 1 2 3 4 5 Dereceleri 2 2 0 2 1 1 Bu şekilde devam edilirse... 29/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? 2 4 1 5 3 0 1 0 3 0 Noktalar 0 1 2 3 4 5 Dereceleri 2 1 0 2 0 1 Noktalar 0 1 2 3 4 5 Dereceleri 1 0 0 2 0 1 Noktalar 0 1 2 3 4 5 Dereceleri 1 0 0 1 0 0 2 4 1 5 3 0 1 0 3 0 4 1 5 2 0 3 30/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? Kanıt (Lemma). Yukarıda izlenen yöntem genelleştirilebilir. Yani, Extended Prüfer kodun ilk satırındaki her bir terim ikinci satır yardımıyla yukarıda izlenen yönteme göre elde edilebilir. (İlk satırdaki her bir terim kendinden önce yazılmamış olan altındaki ve altının sağında yer almayan en küçük tamsayıdır) O halde sadece ikinci satırdaki n 2 terimi saklamak yeterlidir (son terimin her zaman 0 olduğunu biliyoruz). 31/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçları Bilgisayarın Belleğinde Nasıl Saklarız? İkinci satırdaki bu n 2 terimin oluşturduğu diziye ise Prüfer kodu denir. Prüfer kodunun diğer yöntemlere göre önemi aşağıda verilmiştir: İddia n 2 tane 0 ile n 1 arasındaki sayıdan oluşan her dizi n noktalı bir ağacın Prüfer kodu olur. Bu iddianın doğruluğu açıktır. Önce verilen dizinin sonuna 0 ekler ve yukarıdaki yönteme göre extended Prüfer kodu elde ederiz. Daha sonra bu koda göre ağacı elde ederiz. 32/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Ağaçlar Noktaları Adlandırılmamış Ağaçların Sayısı Noktaları Adlandırılmamış Ağaçların Sayısı Noktaları adlandırılmamış, n noktalı ağaçların sayısı genellikle T n ile gösterilir. Ne yazık ki T n için Cayley Teoremi gibi basit bir formül vermek mümkün değildir. Bu bölümde sadece T n sayısının hangi büyüklükte olduğunu kestirmeye çalışacağız. Nokta Sayısı (n) 1 2 3 4 5 Noktaları Adlandırılmış Ağaçların Sayısı 1 1 3 16 125 Noktaları Adlandırılmamış Ağaçların Sayısı (T n ) 1 1 1 2 3 33/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Yukarıdaki tablodan T n sayılarının çok daha küçük olduğu görülüyor. Bu sayıların küçük olması normaldir çünkü noktaları adlandırılmamış bir ağaç verildiğinde bu ağacın noktalarını çok farklı sayıda adlandırabiliriz. Örneğin, n noktalı ve noktaları adlandırılmamış bir ağacın noktalarını n! farklı biçimde adlandırabiliriz. Ancak, bu durumda elde edilen ağaçların bazıları aynı olabilir. Mesela ağaç bir yıldız çizge ise 3 2 4 4 3 2 6 0 1 5 0 1 5 8 7 6 7 8 merkezdeki nokta değişmedikçe adlandırılan çizgeler hep aynı olur. 34/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Yine de en kötü değerlendirme olarak n! değerini kullanabiliriz. Noktaları adlandırılmış, n noktalı ağaçların sayısı n n 2 olduğundan noktaları adlandırılmamış olanların sayısı en azından nn 2 olur. n! Böylece, T n nn 2 n! değerlendirmesini elde ederiz. Stirling Formülünü kullanacak olursak, T n n n 2 ( n e) n 2πn = e n n n n n 2 n 1/2 2π = e n n 5/2 2π olur. Sonuç olarak noktaları adlandırılmamış, n noktalı ağaçların sayısı için bir alt sınır bulmuş olduk. 35/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Şimdi de noktaları adlandırılmamış, n noktalı ağaçların sayısı için bir üst sınır belirlemeye çalışalım. Acaba bir ağacı bilgisayarın belleğinde noktaları nasıl adlandırıldığından ziyade şeklini nasıl saklayabiliriz? Aşağıda bunun için bir yöntem sunulmuştur: Nokta sayısı n olan bir G ağacını ele alalım. G ağacının yapraklarından birini kök olarak seçelim. G ağacını düzlemde kenarları birbiriyle kesişmeyecek şekilde çizelim. Şimdi G nin herbir kenarını düzleme dik olan duvarlar olarak düşünüp, kökten başlayarak sağ elimiz duvarda olacak şekilde bir turu düşünelim. Belli bir adım sonra tekrar başladığımız kök olan noktaya ulaşırız. Ağacın n 1 tane kenarı olduğundan ve herbir kenarın her iki yanından da geçtiğimizden bu turun uzunluğu 2(n 1) olur. Bu tur esnasında ulaştığımız nokta bir önceki noktanın çocuğu ise bunu 1 ile, babası ise 0 ile gösterelim. 36/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Kök olsun 1111001001110110100000 Bu diziye düzlemsel kod (planar code) denir. 37/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Acaba verilen koda karşılık gelen ağacı nasıl çizebiliriz? Alıştırma (8.5.1) 1111111100000000 düzlemsel koduna karşılık gelen ağacı çiziniz. 1010101010101010 düzlemsel koduna karşılık gelen ağacı çiziniz. 1100011100 düzlemsel koduna karşılık gelen ağacı çiziniz. Bir ağaç belirtmez! Başlangıçta 2 tane 1, 3 tane 0 var. Bu durum mümkün değildir! 38/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Böylece yukarıdaki alıştırmadan 0 ve 1 lerden oluşan her kodun bir ağaç belirtmeyebileceğini görmüş olduk. Diğer taraftan, 0 ve 1 lerden oluşan 2(n 1) uzunluğundaki farklı kodların sayısı 2 2(n 1) olur. Öyleyse, noktaları adlandırılmamış, n noktalı ağaçların sayısı en fazla 2 2(n 1) = 4 n 1 olur. O halde aşağıdaki teorem geçerlidir. Teorem Noktaları adlandırılmamış, n noktalı ağaçların sayısı T n, n n 2 n! T n 4 n 1 eşitsizliğini sağlar. 39/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi

Noktaları Adlandırılmamış Ağaçların Sayısı Düzlemsel kodun birçok dezaavantajı da vardır. Örneğin, ağacın hangi noktasının kök olarak seçildiğine ya da ağacın nasıl çizildiğine bağlı olarak bir ağacın birden fazla düzlemsel kodu olabilir. George Polya a = 0.5349... ve b = 2.9557... için olduğunu göstermiştir. T n an 5/2 b n 40/40 AYRIK MATEMATİK 2014 2015 Anadolu Üniversitesi