SORU
5 HAZİRAN 2011, Pazar


Hızlı Yakut dizi elemanın endeks

Verilen BÜYÜK bir dizi var, ve kesinlikle değer. Dizideki değer Endeksi almak istiyorum. Başka bir şekilde, daha sonra Array#index almak için çağrı var mı? Sorun gerçekten çok büyük bir dizi tutmak ve kez Array#index büyük miktarda arama ihtiyacı geliyor.

Birkaç denemeden sonra buldumönbelleğe almaperformansı büyük bir adım kendisi verir değeri yerine 3* *alanları ile yapılar depolayarak elemanları (20x kez kazanmak) içinde dizinler.

Eğer hala önbelleğe (ya da performansını artırmak olacak iyi bir önbelleğe alma tekniği var) olmadan en öğenin dizini bulmak daha kolay bir yolu varsa merak ediyorum.

CEVAP
5 HAZİRAN 2011, Pazar


Karma içinde dizi dönüştürmek. Sonra anahtarı arayın.

array = ['a', 'b', 'c']
hash = Hash[array.map.with_index.to_a]    # => {"a"=>0, "b"=>1, "c"=>2}
hash['b'] # => 1

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal TekZoom

    Canal TekZoo

    1 NİSAN 2012
  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011
  • SlimaksClass

    SlimaksClass

    15 Kasım 2010