simple dynamic string
free
:还剩多少空间;len
:长度;buf
:内容数组
空间预分配:
为减少修改字符串带来的内存重分配次数,sds会在修改时多分配空间。
- 修改后sds空间<1MB,则多分配现有len的空间
- 修改后sds长度>=1MB,则多分配1MB的空间
惰性空间释放:
字符串变短后并不立即释放空间
双向链表
head
:头部; tail
:尾部;len
:长度
哈希表
used
free
:还剩多少空间;len
:长度;buf
:内容数组
空间预分配:
为减少修改字符串带来的内存重分配次数,sds会在修改时多分配空间。
惰性空间释放:
字符串变短后并不立即释放空间
head
:头部; tail
:尾部;len
:长度
used
本文标题:数据结构
本文链接:https://www.haomeiwen.com/subject/mvmrxktx.html
网友评论