Neden listeye ekleme kötü?
Son zamanlarda scala öğrenmeye başladım ve bir liste için başa ::
(olumsuz) işlevi, rastladım.
Kitabı "Scala" listesine ekleme ön yerleştirmeyi o bir performans(1) ise . performansı o(n) olduğundan fonksiyon Ekle olmadığını belirtir Programlama
Bir şey sadece bu cümlede yanlış olarak beni vurur.
Performans bağlıdır uygulaması değil mi? Sadece ileriye ve geriye doğru bağlantıları içeren listeyi uygulamak ve kaptaki ilk ve son öğe saklamak mümkün değil mi?
Sanırım ikinci soru listesi, 1,2,3 söyle aldığımda yapmam gereken nedir ve bunu sonuna kadar 4 eklemek istiyorum?
CEVAP
Anahtarı x :: somelist
somelist
mutasyona uğrayarak, ancak bunun yerine x somelist tüm unsurları tarafından takip içeren yeni bir liste oluşturur. Bu sadece yeni oluşturulan, tek bir bağlı listede x halefi olarak somelist ayarlamak gerek çünkü O(1) zaman olabilir.
Eğer çift bağlı listeler yerine kullanılan, x de somelist değiştirmek istiyorsunuz somelist Başkanı, selefi olarak ayarlanmış olması gerekir. (1) Orijinal listeyi değiştirmeden, sadece tek bağlı listeler kullanabiliriz O. Yani eğer yapmak istersek ::
İkinci soru ile ilgili olarak: :::
listenin sonuna tek öğeli bir liste bağlamak için kullanabilirsiniz. Bu(n) işlemi.
List(1,2,3) ::: List(4)
Neden &; ad std quot;" kötü olara...
Neden&; dizi yineleme için... "* o kad...
Neden Ruby Hariç => e `kurtarmak iç...
Neden JavaScript eval fonksiyonu kötü ...
Sihirli bir numara, ne olduğunu ve ned...