MurmurHash3F jaucējkoda kalkulators
Publicēts: 2025. gada 18. februāris 00:28:05 UTC
Jaucējkoda kalkulators, kas izmanto jaucējfunkciju MurmurHash3F, lai aprēķinātu jaucējkodu, pamatojoties uz teksta ievadi vai faila augšupielādi.MurmurHash3F Hash Code Calculator
MurmurHash3 ir nekriptogrāfiska jaukšanas funkcija, ko 2008. gadā izstrādāja Ostins Eplbijs. Ātruma, vienkāršības un labo izplatīšanas īpašību dēļ to plaši izmanto vispārējas nozīmes jaukšanai. Funkcijas MurmurHash ir īpaši efektīvas uz jaucējkodiem balstītām datu struktūrām, piemēram, jaucēj tabulām, uzplaukuma filtriem un datu dedublikācijas sistēmām.
Šajā lapā piedāvātais variants ir 3F variants, kas ir optimizēts 64 bitu sistēmām. Tas rada 128 bitu (16 baitu) jaucējkodus, kas parasti tiek attēloti kā 32 ciparu heksadecimālais skaitlis.
Pilnīga informācijas izpaušana: es neesmu rakstījis šajā lapā izmantotās hash funkcijas konkrēto implementāciju. Tā ir standarta funkcija, kas iekļauta PHP programmēšanas valodā. Es tikai izveidoju tīmekļa saskarni, lai padarītu to publiski pieejamu šeit ērtības labad.
Par MurmurHash3F hash algoritmu
Es neesmu matemātiķis, bet es mēģināšu izskaidrot šo jaucējfunkciju, izmantojot analoģiju, ko var saprast mani kolēģi, kas nav matemātiķi. Ja vēlaties zinātniski pareizu, pilnīgu matemātikas skaidrojumu, esmu pārliecināts, ka jūs to varat atrast citur ;-)
Tagad iedomājieties, ka jums ir liela LEGO klucīšu kaste. Katru reizi, kad tos sakārtojat noteiktā veidā, jūs uzņemat attēlu. Neatkarīgi no tā, cik liels vai krāsains ir izkārtojums, kamera vienmēr nodrošina mazu, fiksēta izmēra fotoattēlu. Šajā fotoattēlā ir attēlots jūsu LEGO radījums, taču kompaktā formā.
MurmurHash3 dara kaut ko līdzīgu ar datiem. Tas aizņem jebkāda veida datus (tekstu, skaitļus, failus) un samazina tos līdz mazam, fiksētam "pirkstu nospiedumam" vai jaucējvērtībai. Šis pirkstu nospiedums palīdz datoriem ātri identificēt, kārtot un salīdzināt datus bez nepieciešamības aplūkot visu.
Vēl viena līdzība varētu būt kā kūkas cepšana, un MurmurHash3 ir recepte, kā pārvērst šo kūku par mazu kūciņu (jašs). Tas būtu trīs posmu process:
1. darbība: sagrieziet gabalos (datu sadalīšana)
- Pirmkārt, MurmurHash3 sagriež jūsu datus vienādos gabalos, piemēram, sagriežot kūku vienmērīgos kvadrātos.
2. darbība: sajauciet kā traks (sajaukt gabaliņus)
- Katrs gabals iziet savvaļas sajaukšanas procesu:
- Pārvēršana: tāpat kā pankūkas apvēršana, tā pārkārto gabaliņus.
- Maisīšana: pievieno nejaušas sastāvdaļas (matemātiskās darbības), lai sajauktu lietas.
- Squishing: saspiež datus kopā, lai pārliecinātos, ka neviens oriģinālais elements neizceļas.
3. darbība: galīgā garšas pārbaude (pabeigšana)
- Pēc visu gabalu sajaukšanas MurmurHash3 to pēdējo reizi samaisa, lai nodrošinātu, ka pat vissīkākās sākotnējo datu izmaiņas pilnībā maina garšu (jaucēju).