Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi



Benzer belgeler
Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Ağaç (Tree) Veri Modeli

Algoritma Geliştirme ve Veri Yapıları 7 Liste ve Bağlantılı Liste. Mustafa Kemal Üniversitesi

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

Veri Modelleri. Ağaç Veri Modeli. Ağaç Veri Modeli

BIL222 Veri Yapıları ve Algoritmalar

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları. Mustafa Kemal Üniversitesi

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim

Veri Yapıları Laboratuvarı

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

Week 9: Trees 1. TREE KAVRAMI 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI 2. İKİLİ AĞAÇ VE SUNUMU > =

VERİ TABANI YÖNETİM SİSTEMLERİ

2 Temel Kavramlar (Devam) Veritabanı 1

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

BIM 312 Database Management Systems. Veritabanı Kavramına Giriş

Veri Yapıları. Ağaçlar

Veri Tabanı-I 1.Hafta

1 Temel Kavramlar. Veritabanı 1

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

Yrd. Doç. Dr. Caner ÖZCAN

VERİ TABANI UYGULAMALARI

Çanakkale Onsekiz Mart Üniversitesi. Bilgisayar Mühendisliği Bölümü

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

BIP116-H14-1 BTP104-H014-1

İlişkisel Veri Tabanları I

Ağaçlar(Trees) AĞAÇ VERİ MODELİ

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#6: AZALT VE FETHET YÖNTEMİ

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

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

VERİ YAPILARI VE PROGRAMLAMA

Veri Yapıları ve Algoritmalar

Veri Tabanı Yönetim Sistemleri Bölüm - 3

YZM 2116 Veri Yapıları

ALGORİTMA VE PROGRAMLAMA II

Ağ Protokolleri. Aysel Aksu. Nisan, 2016

Algoritma Geliştirme ve Veri Yapıları 10 Graf Veri Modeli. Mustafa Kemal Üniversitesi

BLG 312 Bilgisayar İşletim Sistemleri 2006 BLG 312. Bilgilerin Uzun Vadeli Saklanması. Dosya Sistemi Görevleri. Dosya Sistemi Özellikleri

DOSYA ORGANİZASYONU. Ağaç Yapıları ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

HASTANE OTOMASYONU VERİ TABANI YÖNETİM SİSTEMLERİ TEMEL VERİTABANI KAVRAMLARI

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

Fiziksel Veritabanı Modelleme

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

YZM 2116 Veri Yapıları

Veritabanı Tasarımı. Veri Türleri Kullanma

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

Bilgilerin Uzun Vadeli Saklanması

İLİŞKİSEL VERİTABANI. İlişkisel veritabanlarının ortak özelliği verilerin tablolar aracılığı ile tutulmasıdır.

Algoritma Geliştirme ve Veri Yapıları 8 Kuyruk ve Yığın Yapısı. Mustafa Kemal Üniversitesi

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU

Veri Yapıları ve Algoritmalar

enum bolumler{elektronik, insaat, bilgisayar, makine, gida};

ALGORİTMA VE PROGRAMLAMA II

2-Veritabanı Yönetim Sistemleri/ Temel Kavramlar

BİLGİSAYAR AĞLARI VE İLETİŞİM

DOD / DEPARMENT OF DEFENCE

Mikro Ayarları. Mikro Programının kurulu olduğu veritabanı ve web servisi için bağlantı ayarlarının yapıldığı menüdür.

SQL e Giriş. Uzm. Murat YAZICI

Genel Graf Üzerinde Mutlak 1-merkez

Dağıtık Ortak Hafızalı Çoklu Mikroişlemcilere Sahip Optik Tabanlı Mimari Üzerinde Dizin Protokollerinin Başarım Çözümlemesi

YZM 2116 Veri Yapıları

3. Bölüm Algoritmalar

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

Bir bölgede başka bir bölgeye karşılıklı olarak, veri veya haberin gönderilmesini sağlayan.sistemlerdir.

VERĠ HABERLEġMESĠ OSI REFERANS MODELĠ

Veri Tabanı-I 1.Hafta

VERİ TABANI SİSTEMLERİ

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri

Ders Kodu Yarıyıl T+U Saat Kredi AKTS. Programlama Dilleri

VERİ TABANI YÖNETİM SİSTEMLERİ. Öğr. Gör. Selçuk Özkan

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

İLİŞKİSEL VERİTABANLARI

Yrd. Doç. Dr. Caner ÖZCAN

Bilgi Güvenliği Eğitim/Öğretimi

TCP / IP NEDİR? TCP / IP SORUN ÇÖZME

Esnek Hesaplamaya Giriş

HSE RADAR. İş Sağlığı ve Güvenliği Yönetimi Uygulama, Denetim, Eğitim ve Takip HSE GLOBAL YAZILIM A.Ş. 11 Mart 2016

NETWORK BÖLÜM-5 OSI KATMANLARI. Öğr. Gör. MEHMET CAN HANAYLI CELAL BAYAR ÜNİVERSİTESİ AKHİSAR MESLEK YÜKSEKOKULU 1/27

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ

İş Zekası için Dört-Katmanlı Veri Modellemesi Gerçekleştirimi. Harun Gökçe EG Yazılım, TOBB ETÜ

VERİ YAPILARI. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ HASH TABLOLARI.

Algoritmalara Giriş 6.046J/18.401J

Algoritmalara Giriş 6.046J/18.401J

UZAKTAN EĞİTİM MERKEZİ

Bölüm 1: Veritabanı Yönetim Sistemlerine Giriş

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Kas Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU

BM208- Nesneye Dayalı Analiz ve Tasarım. Sunum 7

Graflar bilgi parçaları arasındaki ilişkileri gösterirler.

Transkript:

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri

Veri modelleri, veriler arasında ilişkisel ve sırasal düzeni gösteren kavramsal tanımlardır. Her program en azından bir veri modeline dayanır. Uygun veri modelinin seçilmesi ve kullanılması; uygulama için en etkin programın yazılmasını sağlar(etkinlik, hız veya bellek gereksinimi olabilir).

Veri modelleri, tasarımı yapılacak programın en uygun ve en etkin şekilde olmasını sağlar ve daha baştan programın çalışma hızı ve bellek gereksinimi hakkında verir. Bilinen veri modelleri; o Bağlantılı Liste o Ağaç o Graf o Durum Makinası o Veritabanı-İlişkisel o Ağ Bağlantı

Veri Modelleri

1) Liste ve Bağlantılı Liste Veri Modeli Liste veri modeli, aynı kümeye ait olan verilerin bellekte art arda tutulması ilkesine dayanır. En yalın liste veri modeli bir boyutlu dizi üzerinde tutulanıdır. Aksi belirtilmediği sürece listeye eklenen yeni elemanlar listenin sonuna eklenir. Bağlantılı liste ise, elemanların kendi değerlerine ek olarak bir de bağlantı bilgisinin kullanılmasıyla sağlanır, bu bağlantı bilgisi bir sonraki elemanın adresi niteliğindedir.

Veri Modelleri

1) Liste ve Bağlantılı Liste Veri Modeli typedef struct topluluk{ int bilgi; char mesaj[100]; struct topluluk *arka; }BLISTE BLISTE *ilk=null, *son=null; bilgi mesaj bağ BLISTE artık yeni bir veri türüdür ve türleri BLISTE olan iki adet işaretçi tanımlanmıştır. Bu işaretçiler bağlantılı listenin başını tutar.

2) Ağaç Veri Modeli Bu model ters çevrilmiş bir ağaca benzer bir yapıdadır. Özellikle veri kümesinin büyük olduğu ve arama işlemlerinin çok kullanıldığı uygulamalarda etkin bir çözümdür.

2) Ağaç Veri Modeli Ağaç veri modeli düğüm ve dallardan oluşur; düğümlerde verilerin kendileri veya bir kısmı tutulurken, dallar diğer düğümlere olan bağlantı ilişkilerini gösterir. En üstteki düğüm kök, kendisine alttan hiçbir bağlantının olmadığı düğüm yaprak, diğerleri de ara düğüm olarak adlandırılır. Uygulamada en çok kullanılan iki tanesi ikili ağaç ve sözlük ağacıdır. Veritabanı yönetim sisteminden sıkıştırma algoritmalarına, oyun programları, işletim sistemlerindeki dosya organizasyonu gibi birçok uygulamada ağaç veri modeli algoritmik çözüm sunar.

2) Ağaç Veri Modeli typedef struct topluluk{ int bilgi; char mesaj[100]; struct topluluk *sol, *sag; }AGAC2 AGAC2 *kok=null; bilgi mesaj sol sag kok değişkeni AGAC2 cinsinden bir işaretçidir. Bu değişken ağacın başlangıç noktası niteliğindedir.

2) Ağaç Veri Modeli Oluşturulan yapı ikili ağaç niteliğindedir, ancak kok=null yapıldığı için ağaçta hiçbir düğüm yoktur. İlk yapılacak işlem ağaca düğüm ekleyecek algoritmanın tasarlanmasıdır. Bunun için her şeyden önce sıralamada kullanılacak olan anahtar sözcüğün belirlenmesidir. Bu yapıda bilgi adlı değişken anahtar sözcüktür. Ekleme, silme, arama gibi işlemler bu anahtar sözcüğe göre yapılacaktır.

3) Graf Veri Modeli Graf veri modeli; aynı kümeye ait olan verilerin düğümler, ayrıtlar ve bunların birleşmesinden oluşur. Düğümler birleşme noktasını ayrıtlar ise düğümlerin bağlantı ilişkisini gösterir. Verilerin kendileri veya bir kısmı hem düğümlerde hem de ayrıtların bilgi kısmında tutulabilir. Yalın bir graf üzerindeki bir ayrıt, doğrudan iki düğüm arasındaki bağlantıyı gösterir; aksi belirtilmedikçe bağlantı iki yönlüdür.

3) Graf Veri Modeli Yalın bir graf, ayrıtları yönlendirilmemiş, ayrıt maliyeti 1 birim olan graftır.

3) Graf Veri Modeli Graf veri modelinde ağaçta olduğu gibi hiyerarşik bir durum yoktur ve her düğüm eşit hiyerarşidedir. Yönlendirilmiş, maliyetli, Hamilton vb. benzer bir çok özel graf tanımı vardır. Kullanım alanlarına örnek olarak; bir şehrin trafik veya su taşıma altyapısından en yüksek akışın sağlanması, taşıma şirketleri için en verimli taşıma, ağ bağlantılarında yüksek başarım elde edilmesi vb.

4) Durum Makinası Veri Modeli Durum makinası veri modeli, bir sistemin davranışını tanımlamak ve ortaya çıkarmak için kullanılan bir yaklaşım şeklidir; derleyici/yorumlayıcılarda, kontrol amaçlı yazılımlarda sistemin davranışını durumlara indirger ve durumlar arası geçiş koşulları ile sistemi ortaya koyar. Kullanım alanlarına örnek olarak; robot kolunun hareketi, şifre çözme, gerçek zamanlı işletim sistemlerinde proses kontrolü vb.

4) Durum Makinası Veri Modeli Durum makinası veri modeli şeklen yönlü graflara benzer. Ancak; bu yapıda birleşme noktaları durum, ayrıtlar da geçiş eğrileri olarak adlandırılır.

4) Durum Makinası Veri Modeli Durum makinası veri modelinde durumlar arasındaki geçişler, sistemin o ana kadar ki durumlarına ve giriş parametrelerine bağlıdır. Durum makinası veri modelinde bir başlangıç durumu vardır. Olay ilk olarak bu durumdan başlar ve diğer durumlara geçiş, sistem davranışını ortaya koyar. Eğer yapıda bir de son durum varsa bu yapı sonlu durum makinası olmuş olur.

5) Veritabanında İlişkisel Veri Modeli Bu veri modeli, tablolar üzerinde kurulan ilişkilere dayanmaktadır. Access, Microsoft SQL, ORACLE, SYBASE, Ingres gibi birçok veritabanı yönetim sistemi ilişkisel veri modelini desteklemektedir. Veritabanı yönetim sistemleri, veritabanı oluşturma, tablo yaratma-silme, alanları tanımlama gibi işlerin gerçekleştirilmesini sağlar.

Veri Modelleri

6) Ağ Veri Modeli Ağ veri modeli, modern katmanlı ağ mimarilerinde, bilgisayar sistemleri arasındaki eş katmanlar düzeyinde veri alış-verişini sağlayan dilim, paket ve çerçeve yapılarını ortaya koyar ve iletişim için gerekli davranışı ortaya tanımlar. Veri haberleşmesinde çoğu mimariler katmanlı yapılardır; mimarilere örnek temsil eden OSI başvuru modeli 7, TCP/IP protokol kümesi 4 katmanlıdır. Ağ yazılımı, ağ üzerindeki farklı bilgisayarların veya aynı bilgisayar üzerindeki farklı uygulamaların birbirleri ile etkileşim içerisinde karşılıklı olarak çalışmasını ve veri alışverişini sağlar. Ağ yazılımı doğrudan o protokol kümesinin sunduğu yapı ve hizmetler üzerinden yapılır. Bir protokol kümesi için geliştirilmiş bir program başka bir protokol kümesi altında çalışamaz.

Veri Modelleri