Új hozzászólás Aktív témák

  • sztanozs

    veterán

    válasz biker #20891 üzenetére

    Különbség a full list scan (foreach) és hashset között:
    >>> # 456.976 elem listában
    >>> A = ['AAAA', ..., 'ZZZZ']
    >>> # 456.976 elem hasset-ben
    >>> B = set('AAAA', ..., 'ZZZZ')
    >>> # 2000 elem egy listában ami random négy karakter (~85% találati valószínűséggel)
    >>> C = ['@ABC', ..., 'XYZ@']
    >>> # keresés eredmények másodpercben
    >>> timeit.timeit("[c in A for c in C]",number=1,globals=globals())
    10.154
    >>> timeit.timeit("[c in B for c in B]",number=1,globals=globals())
    0.000786

    Azaz míg 2000 elem megkeresése végigiterálva a félmilliós listában 10 másodpercig tart, addig ugyanannyi idő alatt 20.000.000 (húszmillió) elemet le lehet ellenőrizni egy félmilliós adattartalmú hashset-ben.

    [ Szerkesztve ]

    JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

Új hozzászólás Aktív témák