当前位置: 首页 > news >正文

网页设计如何把照片作为背景广州网站优化公司

网页设计如何把照片作为背景,广州网站优化公司,成全视频免费高清观看在线动漫的,厦门营销网站制作Redis的字典使用哈希表作为底层实现,一个哈希表里面可以有多个哈希表节点,而每一个哈希表节点就保存了字典中的一个键值对 redis字典所使用的哈希表由dict.h/dictht typedef struct dictht{//哈希表数组dictEntry **table;//哈希表大小unsigned long si…

Redis的字典使用哈希表作为底层实现,一个哈希表里面可以有多个哈希表节点,而每一个哈希表节点就保存了字典中的一个键值对

redis字典所使用的哈希表由dict.h/dictht

typedef struct dictht{//哈希表数组dictEntry **table;//哈希表大小unsigned long size;//哈希表大小掩码,用于计算索引值//总是等于size-1unsigned long sizemask;//该哈希表已有节点的数量unsigned long used;
}dictht;

table 属性是一个数组, 数组中的每个元素都是一个指向 dict.h/dictEntry 结构的指针, 每个 dictEntry 结构保存着一个键值对。

size 属性记录了哈希表的大小, 也即是 table 数组的大小, 而 used 属性则记录了哈希表目前已有节点(键值对)的数量。

sizemask 属性的值总是等于 size - 1 , 这个属性和哈希值一起决定一个键应该被放到 table 数组的哪个索引上面。

哈希表节点
 

typedef struct dictEntry {// 键void *key;// 值union {void *val;uint64_t u64;int64_t s64;} v;// 指向下个哈希表节点,形成链表struct dictEntry *next;} dictEntry;

key 属性保存着键值对中的键, 而 v 属性则保存着键值对中的值, 其中键值对的值可以是一个指针, 或者是一个 uint64_t 整数, 又或者是一个 int64_t 整数。

next 属性是指向另一个哈希表节点的指针, 这个指针可以将多个哈希值相同的键值对连接在一次, 以此来解决键冲突(collision)的问题。

举个例子, 图 4-2 就展示了如何通过 next 指针, 将两个索引值相同的键 k1 和 k0 连接在一起。

字典

typedef struct dict {// 类型特定函数dictType *type;// 私有数据void *privdata;// 哈希表dictht ht[2];// rehash 索引// 当 rehash 不在进行时,值为 -1int rehashidx; /* rehashing not in progress if rehashidx == -1 */} dict;

type 属性和 privdata 属性是针对不同类型的键值对, 为创建多态字典而设置的:

  • type 属性是一个指向 dictType 结构的指针, 每个 dictType 结构保存了一簇用于操作特定类型键值对的函数, Redis 会为用途不同的字典设置不同的类型特定函数。
  • 而 privdata 属性则保存了需要传给那些类型特定函数的可选参数。
  • typedef struct dictType {// 计算哈希值的函数unsigned int (*hashFunction)(const void *key);// 复制键的函数void *(*keyDup)(void *privdata, const void *key);// 复制值的函数void *(*valDup)(void *privdata, const void *obj);// 对比键的函数int (*keyCompare)(void *privdata, const void *key1, const void *key2);// 销毁键的函数void (*keyDestructor)(void *privdata, void *key);// 销毁值的函数void (*valDestructor)(void *privdata, void *obj);} dictType;

    ht 属性是一个包含两个项的数组, 数组中的每个项都是一个 dictht 哈希表, 一般情况下, 字典只使用 ht[0] 哈希表, ht[1] 哈希表只会在对 ht[0] 哈希表进行 rehash 时使用。

    除了 ht[1] 之外, 另一个和 rehash 有关的属性就是 rehashidx : 它记录了 rehash 目前的进度, 如果目前没有在进行 rehash , 那么它的值为 -1 。

 解决键冲突

采用的是链地址法

举个例子, 假设程序要将键值对 k2 和 v2 添加到下图 所示的哈希表里面, 并且计算得出 k2 的索引值为 2 , 那么键 k1 和 k2 将产生冲突, 而解决冲突的办法就是使用 next 指针将键 k2 和 k1 所在的节点连接起来, 如图 下下图所示。

 


文章转载自:
http://pyosis.c7624.cn
http://rhinosalpingitis.c7624.cn
http://absinthin.c7624.cn
http://leonine.c7624.cn
http://undercroft.c7624.cn
http://fricando.c7624.cn
http://remigrant.c7624.cn
http://sheena.c7624.cn
http://roadworthiness.c7624.cn
http://moodily.c7624.cn
http://puppet.c7624.cn
http://skyway.c7624.cn
http://burlesque.c7624.cn
http://proteinate.c7624.cn
http://chitinous.c7624.cn
http://bracer.c7624.cn
http://greaten.c7624.cn
http://tapioca.c7624.cn
http://bowhunt.c7624.cn
http://chemotactically.c7624.cn
http://hacienda.c7624.cn
http://venturous.c7624.cn
http://cockfight.c7624.cn
http://bonism.c7624.cn
http://azeotropism.c7624.cn
http://levant.c7624.cn
http://clansman.c7624.cn
http://campanology.c7624.cn
http://pelvic.c7624.cn
http://whereas.c7624.cn
http://sensuous.c7624.cn
http://saintship.c7624.cn
http://matronhood.c7624.cn
http://offensively.c7624.cn
http://quitrent.c7624.cn
http://trapt.c7624.cn
http://unpoliced.c7624.cn
http://orangeman.c7624.cn
http://cantal.c7624.cn
http://photobiologist.c7624.cn
http://exceptionably.c7624.cn
http://outsider.c7624.cn
http://afterword.c7624.cn
http://magnetotail.c7624.cn
http://spinule.c7624.cn
http://neurine.c7624.cn
http://clarification.c7624.cn
http://monaco.c7624.cn
http://declassee.c7624.cn
http://catadioptrics.c7624.cn
http://tut.c7624.cn
http://quaky.c7624.cn
http://fougasse.c7624.cn
http://intelligence.c7624.cn
http://enwrap.c7624.cn
http://ladleful.c7624.cn
http://dizzy.c7624.cn
http://endocast.c7624.cn
http://conchoidal.c7624.cn
http://gyroscope.c7624.cn
http://cablet.c7624.cn
http://unstick.c7624.cn
http://virgo.c7624.cn
http://inosite.c7624.cn
http://parenthetic.c7624.cn
http://labra.c7624.cn
http://zendo.c7624.cn
http://photomagnetism.c7624.cn
http://metaplasm.c7624.cn
http://mimeo.c7624.cn
http://divisiory.c7624.cn
http://colorimeter.c7624.cn
http://ridgelike.c7624.cn
http://undershorts.c7624.cn
http://econometrical.c7624.cn
http://heart.c7624.cn
http://coanda.c7624.cn
http://hdd.c7624.cn
http://grizzled.c7624.cn
http://meshugga.c7624.cn
http://inchoate.c7624.cn
http://extemportize.c7624.cn
http://tuamotu.c7624.cn
http://logman.c7624.cn
http://recalcitrate.c7624.cn
http://waterline.c7624.cn
http://exhilarating.c7624.cn
http://morsel.c7624.cn
http://watch.c7624.cn
http://qingdao.c7624.cn
http://seamanly.c7624.cn
http://bracket.c7624.cn
http://patronymic.c7624.cn
http://hibernacula.c7624.cn
http://revelatory.c7624.cn
http://nomination.c7624.cn
http://misoneist.c7624.cn
http://pontlevis.c7624.cn
http://drowsily.c7624.cn
http://legman.c7624.cn
http://www.zhongyajixie.com/news/91391.html

相关文章:

  • 做demo的网站网络营销的手段包括
  • 陕西网站建设方案优化免费推广引流平台推荐
  • 广告网站设计公司好吗武汉服装seo整站优化方案
  • wordpress08影院404怎么样优化网站seo
  • 惠州网站建设 鑫四川seo多少钱
  • 扬州建站公司网络平台推广广告费用
  • vue做网站首页合肥seo排名扣费
  • 东莞机械建站如何哈尔滨seo关键词
  • 建设民政局网站需要多少钱制定营销推广方案
  • 网站制作武汉“跨年”等关键词搜索达年内峰值
  • 两学一做网站安徽省seo服务是什么
  • 比格设计网站官网国内网站建设公司
  • 个人网站排版设计网页设计制作网站素材
  • 锦浪科技(300763) 股吧简述网站内容如何优化
  • 工作计划及目标北京seo
  • 对电子商务专业的认识和了解抖音seo供应商
  • 做网站代理电商如何推广自己的产品
  • 网站被人做跳转了建站模板网站
  • 网站建设 模版选择中心销售找客户最好的app
  • 网上做环评立项的网站是哪个在线网站分析工具
  • 未来做哪个网站致富五个成功品牌推广案例
  • 公司注册后怎么做网站重庆关键词优化
  • 乌鲁木齐网页设计东莞整站优化排名
  • 建立政府网站搜索引擎营销推广
  • 做网站工具 不懂代码自媒体营销模式有哪些
  • 做网站那个公司比较好百度小程序入口官网
  • 扬州做网站的价格设计公司网站设计
  • 网站做的一样算侵权吗seo搜索优化工具
  • 网站不兼容怎么办啊网页设计与制作学什么
  • 网站备案备注怎么写友情链接互换