Bu ikisi arasında ne fark var tam olarak? D de bir vektöre ihtiyaç var mı ?
Zekeriya
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
Thread overview | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
February 16, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Bu ikisi arasında ne fark var tam olarak? D de bir vektöre ihtiyaç var mı ? Zekeriya -- |
February 16, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Mazur görün hocam :) İki dile de hakim değilim sadece ara kod incelediğim oluyor oturup kod yazmışlığım yok henüz :) Şimdi Vector ile vector diye 2 farklı şey mi var yoksa struct ismi Vector olduğu için mi öyle söylediniz? :) D array derken de d nin dilimlerini kast ettim phobos kütüphanesindeki olanı değil :) Bu karmaşayı çözmek için neye ne isim vereceğiz kafam karıştı :D Assocative Array için de böyle bir sıkıntı var. D de kullanılan yöntem hash map ama başka dillerde hash table gibi farklı sistemler de var bir ara sadece isim farklılığı sanmıştım. Zekeriya -- |
February 16, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Talha Zekeriya Durmuş (zekeriyadurmus) | Bir de c header to d header diye bir olay var windows için acaba bunun linux sürümü var mı? DMC diye geçiyordu galiba emin değilim. Diğer bilgisayara windows kuracağım mecbur çünkü bazı toollara linuxda erişemiyorum. Zekeriya -- |
February 16, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Talha Zekeriya Durmuş (zekeriyadurmus) | Herhalde C değil de C++ ve Vector değil de vector diyorsun... :) Aradaki en önemli farklar:
Şimdi farkediyorum: Sanırım "D Array" deyince de std.container.Array'i kasdetmişsin. Bir önce vector yerine Vector görünce array yerine Array yazmışsındır diye düşünmüştüm. :) std.container'deki topluluklar ilginç bir sahiplenme ve erişim mantığı üzerine kurulular; alışık olmayanlara garip gelebiliyor. Ben forum sorularındaki karşılaştığım kadarıyla biliyorum; deneyimim yok. Ali -- |
February 16, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Talha Zekeriya Durmuş (zekeriyadurmus) | Alıntı (zekeriyadurmus): >Şimdi Vector ile vector diye 2 farklı şey mi var Küçük/Büyük harf ayrımı önemli olduğu için sen Vector yazınca özellikle öyle sandım. Hele tür isimleri de büyük harfle başlatılınca öyle bir tür diye düşündüm. Normalde vector veya std::vector yazılıyor. :) Alıntı: >d nin dilimlerini kast ettim O zaman yukarıdaki farklar geçerli. :) Alıntı: >Bu karmaşayı çözmek için neye ne isim vereceğiz kafam karıştı :D array: dizi slice: dilim :) Alıntı: >Assocative Array için de böyle bir sıkıntı var. D de kullanılan yöntem hash map ama başka dillerde hash table gibi farklı sistemler de var bir ara sadece isim farklılığı sanmıştım. Ben hâlâ sadece isim farklılığı diye biliyorum. :) Ali -- |
February 17, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Talha Zekeriya Durmuş (zekeriyadurmus) | Alıntı (zekeriyadurmus:1392569393): >Mazur görün hocam :) İki dile de hakim değilim sadece ara kod incelediğim oluyor oturup kod yazmışlığım yok henüz :) Şimdi Vector ile vector diye 2 farklı şey mi var yoksa struct ismi Vector olduğu için mi öyle söylediniz? :) D array derken de d nin dilimlerini kast ettim phobos kütüphanesindeki olanı değil :) Bu karmaşayı çözmek için neye ne isim vereceğiz kafam karıştı :D Assocative Array için de böyle bir sıkıntı var. D de kullanılan yöntem hash map ama başka dillerde hash table gibi farklı sistemler de var bir ara sadece isim farklılığı sanmıştım. Zekeriya associative array == hash map (java) == dictionary (python) == hash (ruby) -- |
February 18, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mengu | Mengu hocam tam olarak öyle değil :) Bir ara bakınmıştım http://blog.manishchhabra.com/2012/08/the-5-main-differences-betwen-hashmap-and-hashtable/ Amaçları aynı ama kullanılan algoritma dolayısıyla perforamns farklı. O yüzden doğru isim kullanmak uygun olacaktır diye düşünüyorum. Ayrıca D dili assocative array diye bahsetse de internet sitesinde http://dlang.org/hash-map.html burada linkte hash-map diye geçiyor. Sanırsam (pek emin değilim) önceleri AA olmadığı için veya ilk uygulamalarında kütüphane şeklinde yapmışlardı belki de yanılıyorum daha öncede vardı ama bunu bir kütüphane olarak sonradan d de yazmışlar. Ayrıca eklemek isterim: D dilinde kullanılan AA key sırasına göre yani Zekeriya -- |
February 18, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Talha Zekeriya Durmuş (zekeriyadurmus) | Alıntı (zekeriyadurmus): >Bir ara bakınmıştım http://blog.manishchhabra.com/2012/08/the-5-main-differences-betwen-hashmap-and-hashtable/ O yazı Java'daki iki topluluk arasındaki farkı çoklu işletim dizileri açısından anlatıyor. Yoksa hem o yazıdaki hem de burada konuştuğumuz bütün topluluklar "hash table"dır. Alıntı: >kullanılan algoritma Algoritma aynı:
Alıntı: >dolayısıyla perforamns farklı Kilit vs. nedeniyle olabilir. Yoksa büyük O karmaşıklığı açısından hash table işlemleri normalde hep O(1)'dir. Alıntı: >Ayrıca D dili assocative array diye bahsetse de internet sitesinde http://dlang.org/hash-map.html burada linkte hash-map diye geçiyor. Çünkü aynı şey. :) Alıntı: >kütüphane olarak sonradan d de yazmışlar. Eşleme tablolarının iç olanak olmasının gerekmediği ve kütüphane olarak da yazılabileceği bir gerçek ama hâlâ kütüphane olamıyor. Durum bayağı karışık ve kötü ama ben her ayrıntısını bilmiyorum. :) Aklımdaki bir örnek şu: Eğer dilin kendi olanağı ise, aşağıdaki kod bugün çalışıyor:
Dikkat ederseniz, ne aa'nın "merhaba" diye bir elemanı ne de onun 'a' diye elemanı var. Ama derleniyor ve işliyor. Yanılmıyorsam bu olmayan elemana böyle ikili erişim kendi kodlarımızda sağlanamıyor. Emin değilim... Deneyin... :-p Alıntı: >D dilinde kullanılan AA key sırasına göre yani Hiçbir hash table öyle göstermez. (Bir kaç elemanlık örneklerdeki tesadüyler dışında.) Alıntı: >bunu bu şekilde saklayan gösteren algoritmalar da mevcut diye biliyorum O algoritmalar ikili arama ağacı kullanırlar. Örneğin std::map öyledir ama onların elemana erişimleri O(log N) karmaşıklığındadır. Hash table sıralamayı takmadığı için O(1)'dir. Alıntı: >Görünüş itibariyle aynılar ama aslında gerçekten aralarında fark var. Doğru ama şunların arasında fark yok: hash table, hash map, associative array, eşleme tablosu, vs. :) Ali -- |
February 19, 2014 C Vector ve D Array | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Alıntı (acehreli:1392750455): >Eşleme tablolarının iç olanak olmasının gerekmediği ve kütüphane olarak da yazılabileceği bir gerçek ama hâlâ kütüphane olamıyor. Durum bayağı karışık ve kötü ama ben her ayrıntısını bilmiyorum. :) Aklımdaki bir örnek şu: Eğer dilin kendi olanağı ise, aşağıdaki kod bugün çalışıyor:
|