Skip to main content

C İle Veri Yapıları : Kuyruk Ve Kuyruk İşlemleri

Bundan önceki yazımda temel veri yapılarından biri olan Yığın (Stack) kavramına göz atmıştık.  Stack   tek yönlü bir veri yapısıydı,  bir  yığına ilk giren eleman  , yığından en son çıkan eleman oluyordu. Kuyruk   ise yine temel veri yapılarından bir tanesidir.  Aslında günlük hayatta belkide farkında olmadan kullandığımız bir yapı.  Örneğin bir hastahanede muayne olmak isteyen hastaların sırasını göze alalım.  Bu sıraya dahil olmak isteyen hastalar  en sondan  kuyruğa dahil olmak zorundadır. Aynı şekilde   doktor muayne olacak hastayı en önden   çağırmaktadır.   Kısaca diyebiliriz ki , bir kuyruğuna eleman eklerken sondan , eleman çıkartırken önden  işlem yapacağız.

Bu durumda böyle bir yapı tanımlarken   kuyruğun önü ve arkasını gösteren  iki adresimiz olacağını çıkartabiliriz.
Devamını Oku

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

C Programlama : Yiğin İşlemleri

C Programlama ile Veri Yapıları diğer dillere oranla biraz daha emek istiyor. C makine diline daha yakın olduğu doğal olarak kodlaması zor. Ama bence C ‘de veri yapılarını kavramış bir insan diğer dillerde hiç ama hiç zorlanmaz. Sonuçta Pointer kavramı C ve C++ ‘ta karşımıza çıkıyor. Üst düzey diller olan Java, C# gibi programlama dillerinde gerçek anlamda bir pointer kavramı yok, ve işleler çok daha basit bir şekilde halledilebiliyor. Ama programcılığı gerçek manada öğrenmek istiyorsanız ve ufkunuzu genişletmek istiyorsanız en azından veri yapılarını C ‘de kodlayabilmeniz şart.

Bugün Veri Yapılarının temel konularından olan Stack (Yığın) kavramına göz atacağız. Bir yığın nedir, nerelerde kullanılır , nasıl çalışır sorularına cevap bulacak ve örnek yığın kodu ile makeleyi sonrandıracağım.
Devamını Oku

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

C Programlama : Pointer Ve Dizi İlişkisi

Göstericilerle çalışmak zordur, göstericileri  eğer programlama başlarken  iyice sindirmezseniz muhtemelen daha sonra göstericileri kullanarak bir şeyler geliştirmek oldukça zor olacaktır.  Bu yazımda göstericilere  giriş olması açısından Pointer ve dizi ilişkisi adına bir şeyler yazacağım. Öncelikle gösterici nedir , ne işe yarar ?  Gösterge değişkenler ( Pointer)  bir değişkenin adresini tutan bir değişkendir. Örneğin biz  C  Programlama dilinde

int a  =5 ;   gibi bir tanımlama yaptığımızı düşünelim.       Pointer dediğimiz değişkenler bu a değişkenin değerine ulaşmak için direk a  değişkenini adresini kullanırlar  ve bu yöntem klasik yönteme göre çok daha hızlı ve performanslıdır.    Bu yüzden özellikle bir program geliştirirken ve büyük özellikle büyük verilelerle çalışan programlar çalışırken  pointer değişkenlerini kullanırız.   Tahmin edebilirsiniz ki bu hızı kazanırken bir şeylerden feragat ediyoruz kolaylık.   Dizi değişkenlerle çalışmak  , pointerlarla  çalışmaktan daha zordur.    Pointer değişkenler bu yüzden öğrenilmesi zaman alan , yada söyle diyelim öğrenildiği zannedilen ama pratikte kullanılmadığı sürece öğrenilmeyen bir kavramdır.
Devamını Oku

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Linux’a yeniden Merhaba

En son bir Linux dağatımı kullandığımda takvimler 2009’u gösteriyordu. Aradan 3 yıl gibi bir süre geçtikten sonra birazcıkta bu dönem aldığım Operating Systems dersinin etkisiyle yeniden Linux kullanmaya başladım .  2009 yılında  kısa bir süre  Linux çekirdeğini kullanan Ubuntu işletim sistemini kullanmıştım, sonra o dönem oldukça adından söz ettiren Tübitak projesi Pardus’u denemiş fakat istediğimi pekte alamamıştım.

İlk olarak Ubuntu ‘yu sanal bir biçimde kurmak istedim, aslına bakarsak kurdumda fakat   sistemde aşırı derecede kasmalara sebep olduğunu gördüm. (Sanallaştırma yazılımı olarak bir  Oracle projesi olan Virtual Box’ı kullandım.)  Bunun üzerine  sistemime direk kurmaya karar verdim.

İlk olarak 2009’da kullandığım kullandığım Ubuntu’ya oranla oldukça farklı bir arayüzle karşılaştığımı söylemem gerek. Ubuntu adeta kabuk  değiştirmiş. Unity adını verdikleri bu yeni arayüze alışmak benim gibi yıllardır Windows kullanan birisi için ilk başta hiç kolay olmadi. Ama bir kaç gün Linux üzerine çalıştıktan sonra  bu sıkıntıyı aştığımı düşünüyorum. Arayüz ve standart kontrollere alıştıktan sonra sistemin derinliklerine yavaş yavaş inmeye başladım. Gerek Ubuntu Yükleme merkezinden olsun gerek Synapstisc  Yöneticisinden olsun  işime yarayacak paketleri  birbir indirdim.  Sistemime  Apache,Php,MysSql’ide kurduktan sonra ufak ufak Linux alıştırmalarına başladım.

Devamını Oku

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Devreler Ve Sistemler Ders Notları

İstanbul Üniversitesi Bilgisayar Mühendisliği Bölümünde Yrd. Doç Dr. Fatih Keleş tarafından verilen dersin notlarıdır. Ders daha  önceki dönemlerde Circuit Theory adıyla verilmiştir. 2012-2013 eğitim döneminde  yapılan  müfredat güncellemesinden sonra  dersin içeriğinde bir takım değişiklikler meydana gelmiştir. Notlar aşağıdaki konuları kapsar.

Devamını Oku

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS