Nicolay
V2EX  ›  PHP

PHP 关联数组 是基于哈希实现的,所以查找和新增都是 O(1) 嘛?

  •  
  •   Nicolay · Jan 4, 2020 · 4426 views
    This topic created in 2342 days ago, the information mentioned may be changed or developed.
    4 replies    2020-01-05 12:49:07 +08:00
    Austaras
        1
    Austaras  
       Jan 4, 2020
    天底下哪有这样的好事
    kkk330
        2
    kkk330  
       Jan 4, 2020 via iPhone
    大多数情况下是这样的,但是没记错的话,php5 数组解决 hash 冲突的方式是往 bucket 下挂 bucket,搞了个链表,所以当 hash 冲突的时候这里不是 O ( 1 ),php7 没看不清楚,反正 hash 冲突解决方法就那几种;再一个就是 hash 表容量到阈值,一般扩容一倍,并且复制&重新 hash 原来的,这里的开销也不小
    xiaotianhu
        3
    xiaotianhu  
       Jan 5, 2020   ❤️ 2
    xiaotianhu
        4
    xiaotianhu  
       Jan 5, 2020
    哈希表碰撞攻击了解一下
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2618 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 15:56 · PVG 23:56 · LAX 08:56 · JFK 11:56
    ♥ Do have faith in what you're doing.