Ana Soru: Julia ile sıralı bir listeye bir öğeyi eklemenin en hızlı yolu nedir?Öğeyi Julia ile sıralı bir listeye ekle (kopyalayan ve içermeyen)
Şu anda, bunu:
v = [1, 2, 3, 5] #example list
x = 4 #value to insert
index = searchsortedfirst(v, x) #find index at which to insert x
insert!(v, index, x) #insert x at index
Bonus Soru: Ben aynı anda hiçbir çiftleri sağlamak istiyorsanız ne olacak?
insert_and_dedup!(v::Vector, x) = (splice!(v, searchsorted(v,x), [x]); v)
var:
Teşekkürler, bu çok temiz. –
Eklentiyi değiştirdim! değiştirme argümanının skaler değerleri içeren sayılabilir bir şey olmasına izin vermek için: https://github.com/JuliaLang/julia/commit/e048f2bf1b8da56b07738c0a4d142cd29e140e98. Artık insert_and_dedup! (V :: Vector, x) = (splice! (V, searchsorted (v, x), x); v) 'yi tanımlayabilirsiniz. – StefanKarpinski
Teşekkürler, ayrıca julia'daki tüm çalışmalarınız için teşekkürler. Ben dili seviyorum. –