已采納回答 / 陳雷
網上的資料非常多, 我轉一篇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
最新回答 / weibo_雷神傷感_0
結構體(使用關鍵字 struct),是C語言里的東西,C語言不是面向對象的。C語言發明時候,還沒有面向對象概念。后來出現語言C++,Java,C#等為標準,你可以把結構體和類(使用關鍵字class)對比起來。不難發現,結構體是公有的,數據和函數都可以被結構體外函數使用。在現在軟件工程理論里,這被認為是不規范。所以后期語言都有class,默認私用。
2018-12-17