Yakın tarihli bir projemde, aşağıdaki başlığa sahip bir sınıf tanımladım: public class Node extends ArrayList<Node> { ... } Bununla birlikte, CS profesörümle konuştuktan sonra, sınıfın "hafıza için korkunç" ve "kötü uygulama" olacağını belirtti. İlkini özellikle doğru, ikincisini öznel olarak bulamadım. Bu kullanım için gerekçem, bir örneğin davranışının ya özel bir …
Bunu meslektaşlarımla tartışıyordum ve C # ' .Anyda verilen herhangi bir kullanımın ne olduğunu bulamadık List<>. Dizideki bir öğenin geçerliliğini aşağıdaki ifade gibi kontrol edebilirsiniz: if (MyList.Any()){ ...} //Returns true or false Tam olarak aynı olan if (MyList.Count() != 0) { ... } ve ififadenin amacı hakkında çok daha yaygın, …
Sadece şunu yazdım, Python'da for i in a: i += 1 Orijinal listenin elemanları aaslında hiçbir şekilde etkilenmeyecektir, çünkü değişken isadece orijinal öğenin bir kopyası olarak ortaya çıkmaktadır a. Orijinal öğeyi değiştirmek için, for index, i in enumerate(a): a[index] += 1 gerekli olacaktı. Bu davranıştan gerçekten şaşırdım. Bu, diğer dillerden …
Öğe numaraları için UPC'yi hesaplamak üzere bir windows formu üzerinde çalışıyorum. Bir kerede bir ürün numarası / UPC'yi başarılı bir şekilde oluşturacak bir tane oluşturdum, şimdi birden fazla ürün numarası / UPC için genişletmek ve yapmak istiyorum. Bir liste kullanmaya başladım ve denedim, ancak sürekli takılıyorum. Bir yardımcı sınıf oluşturdum: …
İşlevsel dillerin çoğunun, en temel liste türleri olarak tek bir bağlantılı liste ("eksiler" listesi) kullandığını fark ettim. Örnekler arasında Common Lisp, Haskell ve F #. Bu, yerel liste türlerinin diziler olduğu genel dillerden farklıdır. Neden? Common Lisp (dinamik olarak yazılmış) için, eksilerin listelerin, ağaçların vb. Temeli olacak kadar genel olduğu …
Belirli bir sıralanmamış tamsayılar listesinde bulunmayan (ve listenin en küçük değerinden daha büyük ) ilk (en küçük) tamsayıyı bulmanın en hızlı yolu nedir ? İlkel yaklaşımım onları sıralamak ve listeye adım atmak, daha iyi bir yol var mı?
Sadece bir List(: +) için ekleme işleminin yürütme süresinin boyutu ile doğrusal olarak büyüdüğünü okudum List. Bir şeye eklemek Listoldukça yaygın bir işlem gibi görünüyor. Bunu yapmanın deyimsel yolu neden bileşenleri önceden ve sonra listeyi tersine çevirmeli? Uygulama herhangi bir noktada değiştirilebileceği için tasarım hatası da olamaz. Benim açımdan, hem …
Çoğu fonksiyonel programlama dilleri (mesela Common Lisp, Scheme / Raket, Clojure, Haskell, Scala, Ocaml, SML) gibi listelerde bazı ortak yüksek mertebeden fonksiyonları desteklemek map, filter, takeWhile, dropWhile, foldl, foldrmesela (bkz , Common Lisp, Scheme / Racket Clojure yan yana referans sayfası , Haskell , Scala , OCaml ve SML belgeleri.) …
Listelerde veya dizilerde çalışmak için bazı üst düzey işlevler tekrar tekrar benimsenmiş veya yeniden keşfedilmiştir. Fonksiyonlar haritası , katlama [ l | r ] ve filtre , ortak bir ataya sahip görünmeyen Scheme, ML ve Python gibi çeşitli programlama dillerinde birlikte bulunur. Soruyu odakta tutmak için bu üç isimle gidiyorum. …