Method Reference: string.keyHash

string: key = keyHash (str)
string: key = keyHash (str, base)

Generate a hash code for string array.

key = keyHash (str) generates a uint64 scalar that represents the input array str. keyHash utilizes the 64-bit FNV-1a variant of the Fowler-Noll-Vo non-cryptographic hash function.

key = keyHash (str, base) also generates a 64-bit hash code using base as the offset basis for the FNV-1a hash algorithm. base must be a uint64 integer type scalar. Use this syntax to cascade keyHash on multiple objects for which a single hash code is required.

Elements are hashed together with their lengths, so the boundaries between them are part of the key and a string array does not hash as any other splitting of the same characters. Missing elements are equal to one another and distinct from the empty string. Two arrays that keyMatch reports as the same key always hash alike.

Note that unlike MATLAB, this implementation does not use any random seed. As a result, keyHash will always generate the exact same hash key for any particular input across different workers and Octave sessions.

Source Code: string