Hashing | Index << >> |
HASH←{ N←≢X←⍺ ⋄ Y←⍵ ⋄ Z←(≢⍵)⍴¯1 c←{⊂⍵}⌸ ⍺⍺ ⍺⍪⍵ Z ⊣ {k←(N>⍵)⍳0 ⋄ Z[q]←(p,N)[(X⌷⍨⊂p←k↑⍵) ⍳ Y⌷⍨⊂q←k↓⍵-N] ⋄ 0}¨ c } u← ○ ? 1e4 3 ⍴ ⌈1e4*÷3 x← u ⌷⍨ ⊂ ?1e4⍴≢u y← u ⌷⍨ ⊂ ?1e4⍴≢u hd ← {⍳⍨ ⍉cluster⍤1⍉ ⍵} cmpx 'x hd HASH y' 'x⍳y' x hd HASH y → 4.73E¯2 | 0% ⎕⎕ x⍳y → 7.64E¯1 | +1516% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕ |