已采纳回答 / 陈雷
网上的资料非常多, 我转一篇http://www.cnblogs.com/wuyuegb2312/archive/2013/06/08/3126510.html 你看看哈, 有问题可以一起探讨。
2019-01-25
已采纳回答 / 陈雷
问题一:$arr[2]取得值是‘abc’还是‘bar’? 使用$arr[2]取的值还是‘abc’ 但是请注意,在底层的hashtable中,abc被放在第1个位置,当我们通过$arr[2]取值的时候, h值是2,2|-8=-6 从前面的索...
2019-01-03
讲师回答 / 陈雷
可以这么简单的理解:1、对于key是数字的,就不用涉及到hash运算,此时使用的是packed array; 当然如果key的值较大,或者间隔较大,还是会退化成hash array。 packed array 能够节省索引部分占用的内存,是一个性能上的优化;2、对于key是非数字的,必须用hash算法进行计算出来它所在bucket的位置,那么索引数组是必不可少的,只能是hash array。这是底层的实现,对于我们写php代码,需要关注的点是对于业务中的大数组,有没有可能设计一些算法,让它满足packe...
2018-12-19