• introduction'ı bu ise kendisi nasıl bir dünya merak ettiğim 3 kiloluk kitap.
  • 2016'da türkçeye kazandırılarak palme yayınevi'nden çıkmış.

    http://www.palmeyayinevi.com/algoritmalara-giris
  • pdf dosyası olan varsa şimdiden minnettarımmm.
  • matematiksel olarak öyle çok da ileri düzey değildir. ileri düzey algoritma analizi kitabı görmek isteyenler donald knuth'un the art of computer programming serisine bakabilirler. volume 1'de anlatılıyor.
  • kitabin turkcesini almayin. eger ingilizcesini anlayacak kadar ingilizceniz yoksa once dil calismalarina baslayin. sonra gelin algoritma ve kod ogrenmeye baslayin.
  • kitabın türkçesini almayın diyen arkadaşa sonuna kdar katılıyorum, ben ucuz fiyatından dolayı aldım fakat böyle rezalet bir çeviri olamaz. türkçe olup olmadığı bile anlaşılmıyor. iki cümle üst üste okuyamıyorsunuz. uzun ve sıkıcı cümleler, anlatım bozuklukları gırla... kesinlikle ingilizcesi daha akıcı. 80 dolar ama değer.
  • bir algoritma inandırıcı olmalıdır.. önsözü bu kitaba çok yakışıyor.
  • not: kitabın 3. basımı ve 3. basımından çevirisini baz alarak konuşuyorum.
    berbat bir kitaptır. niye olduğunu detaylarıyla açıklayacağım.

    yani öncelikle şunun tanımını ve ön kabulünü yapalım. bilimsel bir kitap berbat olmasına rağmen konu başlıklarını iyi tanımlamış veya çerçeveyi güzel gösteren bir kitap olabilir, bu kitabın kapağının estetik olmasıyla eşdeğerdir. bu ön koşul ile başlamadan önce türkçe çevirisinin de editöryel hatalar barındırdığını çok rahatlıkla söyleyebilirim. hatta o kadar ileri gidip, türkçesinde, daha ilk algoritmada mantıksal yanlışlıklar yapan bir kitabı nasıl okuyabileceğinizi sorarım size. hocaların emeklerine bir şey demiyorum ama temeli sağlam olmayan bir kitaba, böyle yanlışlar da eklenince daha da berbat bir kitap oluyor. şimdi daha da açıklayayım:

    bilgisayar bilimlerinde bir algoritmanın kanıtını yapmak için asimtotik notasyonu kullanırız. burada donald ervin knuth dedenin katkılarını göz ardı etmiyoruz. bu kitap da temelleri donald dedenin bible'ı olan kitaba göre veriyor. yani algoritmalara giriş kitabında direkt asimtotik notasyon ile anlatmaya başlıyor. (ayrıca kitabın içerik kısmı da the art computer programming vol 1'ün içerik kısmına göre benzer ilerliyor) bu anlatımı zaten the art computer programming'te görüyoruz. onda da başlar başlamaz direkt asimtotik notasyona girdiğini görüyorsunuz. bu yeni başlayan için uygun bir anlatım değil! net! bunu cepte tutalım.

    hadi diyelim bu şekilde anlattınız. yahu bu anlatımı matematiksel ifadelerle yani matematiksel bakış açısına göre mi yapacaksınız yoksa bilgisayar bilimcisinin daha doğrusu bilgisayar mühendisliği bakış açısı ile mi? bunu söyleme sebebim sayfa 26'dan başlayan algoritma analizine göredir. yani biz algoritma analizi yaparken tüm komutların adetine veya maliyetine göre hesaplamayız. bu, bizim için, yanlış bir yaklaşım. mesela iç içe 2 döngü olduğunu varsayalım ve bu döngülerin içinde 5 tane koşullu yapıların olduğunu varsayalım. şöyle açıklayayım:
    for { ...
    for { ...
    if()
    if()
    if()
    if()
    if()
    }
    }
    bizim maliyet hesabımız kısaca o(n^2) olur. buradaki if'leri çoğu zaman değerlendirmeye almayız! yahu, bunu "önceden" niye belirtmiyorsun, ileride şöyle yapacağız böyle yapacağız diye. tamam bunu ileride belirtiyorlar ama bu kadar kötü bir anlatımla yapmaman lazım bunu. hadi her komutun maliyetine göre yazmak istediniz diyelim. onu da anlarım da kitapta 2.2 algoritmaları analiz etme 2. paragrafı, niye risc mimarisine(load/store architecture) göre yazdığınızı söylemiyorsunuz? makine bağımsız kod hesaplamaya çalışmayı anlatıp, konuyu bilgisayar mühendisliğinden soyutlamaya çalışıp niye bilgisayar mühendisliği içine girdiğinizi söylemiyorsunuz? abi siz bir matematik bakış açısı ile bir bilgisayarcı bakış açısı ile yazarsanız adamı manyak edersiniz. hem matematikçiler sizi tokatlar hem de bilgisayarcılar. iş mi şimdi bu? ileri ki aşamalarda bu hatalarını bir nebze olsun düzeltmeye çalışıyorlar ama abi siz konuya bu kadar kötü başlayıp nasıl toparlamayı düşünüyorsunuz? berbat anlatmışsınız güzelim konuları...

    bu kitaptaki algoritmaları inceleyeyim, dur bilgimi tazeleyeyim diye açtığım her zamana lanet ediyorum ya! çöpe atsam verdiğim paraya kıyamıyorum. gerçi hata bende, bu kitabı içerikler kısmına bakmak için tuttuğumu hep unutuyorum. bu kitabı almayın rica ediyorum ya.

    edit: bu arada matematiksel bakış açısıyla ne kadar berbat anlattığını açıklamayı unutmuşum. matematiksel olarak açıklamaya çalışırken, bütün değişkenleri birbirine karıştırıp çorba edip ve matematiksel hiçbir ifade şeklinde anlatmayıp onu da tamamıyla bilgisayarcı anlatımıyla yapmak, matematiksel bakış açısıyla berbat anlatıma da diğer bir örnek. matematiksel ifadelerle anlatacaksınız tony hoare'ın hoare logic'te anlattığı gibi yapmalısınız. yahu siz ne bilgisayarcı ne de matematikçi mantığıyla anlatamıyorsunuz ki bu konuları! ne anlatıyorsunuz abi siz bu kitapta? bak yine sinirlendim.

    ikinci edit: biraz önce algorithms kitabını inceledim. algoritmalar kitabı böyle olur. daha fazla yorum yapmak istemiyorum çünkü reklam gibi olabilir ama işin mutfağını bir bilen olarak lütfen ikisinin ilk 20 sayfasını okuyup karşılaştırın. ne demek istediğimi çok iyi anlarsınız.
  • biraz önce bitirdim. algoritma nedir, ne değildir öğrenmek için başucu kitabı. eğer ingilizceniz iyiyse ingilizcesini okuyun, türkçe çeviriden uzak durun. algoritmalar için basit anlatıma sahip grokking algorithms kitabını da tavsiye ederim.
  • türkçe çevirili olanı aldım. yeni başladım . bu dönem algoritmalar dersi vardı. hemde elimde bulunsun istedim . bir de biçimsel diller ve otomatlar diye çok ilginç bir ders var. bana bu ders ile ilgili tavsiye verirseniz sevinirim.
hesabın var mı? giriş yap