哈希表实现

2021/4/14 18:27:30

本文主要是介绍哈希表实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

hash_table.h 

//
// Created by l21599 on 2021/4/14.
//

#ifndef C_HASH_TABLE_H
#define C_HASH_TABLE_H

#ifdef __cplusplus
extern "C" {
#endif

    struct hash_table {
        char *key;
        void *value;

        struct hash_table next;
    } __attribute__((__packed__));

    /**
     * 哈希表根据key,获取值
     * @param key 键
     * @return 值得类型不确定,理论上可以为任何类型
     */
    void *get(char *key);

    /**
     * 将键值对存入哈希表
     * @param key 键
     * @param value 值
     * @return
     */
    int put(char *key, void *value);

    /**
     * 移除某个键值对
     * @param key 键
     * @return
     */
    int remove(char *key);

    /**
     * 哈希表大小,即键的个数
     * @return
     */
    long long size();

    /**
     *
     * @param key
     * @return
     */
    bool containKey(char *key);

    /**
     * 判断哈希表是否为空
     * @return
     */
    bool isEmpty();

    /**
     * 哈希表所有键值对打印
     * @return
     */
    char *toString();

#ifdef __cplusplus
}
#endif

#endif //C_HASH_TABLE_H

待续!

 



这篇关于哈希表实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程