PHP中hash table有哪些特点

1、特点

支持典型的key->value查询。

可以作为数组使用。

添加、删除节点是O(1)的复杂性。

key支持混合类型:同时存在相关数组索引数组。

Value支持混合类型。

支持线性遍历:例如foreach。

2、实例

typedefstruct_hashtable{
uintnTableSize;//表长度,并非元素个数
uintnTableMask;//表的掩码,始终等于nTableSize-1
uintnNumOfElements;//存储的元素个数
ulongnNextFreeElement;//指向下一个空的元素位置
Bucket*pInternalPointer;//foreach循环时,用来记录当前遍历到的元素位置
Bucket*pListHead;
Bucket*pListTail;
Bucket**arBuckets;//存储的元素数组
dtor_func_tpDestructor;//析构函数
zend_boolpersistent;//是否持久保存。从这可以发现,PHP数组是可以实现持久保存在内存中的,而无需每次请求都重新加载。
unsignedcharnApplyCount;
zend_boolbApplyProtection;
}HashTable;
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。