diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-01-30 10:36:49 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-01-30 10:36:49 +0100 |
| commit | aa9613efb6fb39bd96fc4836b5d38c3746af1b15 (patch) | |
| tree | 0fac2b661a860b3ca2e3effa868384290064f708 /src/ht/ft_hthash.c | |
| parent | fe37597119353ce183fc404417b81bd4702f64b7 (diff) | |
| download | libft-aa9613efb6fb39bd96fc4836b5d38c3746af1b15.tar.gz libft-aa9613efb6fb39bd96fc4836b5d38c3746af1b15.tar.bz2 libft-aa9613efb6fb39bd96fc4836b5d38c3746af1b15.zip | |
hash table draft
Diffstat (limited to 'src/ht/ft_hthash.c')
| -rw-r--r-- | src/ht/ft_hthash.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/ht/ft_hthash.c b/src/ht/ft_hthash.c new file mode 100644 index 0000000..66f8efb --- /dev/null +++ b/src/ht/ft_hthash.c @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_hthash.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/01/30 09:56:01 by cacharle #+# #+# */ +/* Updated: 2020/01/30 10:34:27 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +t_ftht_digest ft_hthash(t_ftht *ht, char *key) +{ + t_ftht_digest digest; + + if (*key == '\0') + return (0); + digest = *key++ << 7; + while (*key != '\0') + { + digest = ((1000003 * digest) ^ *key) & (1<<32); + key++; + } + return (digest); +} |
