C++17 概念实验室

比较器、equal_range 与哈希词频索引

输入一行词语,观察同一份数据在有序关联容器与无序关联容器中的不同组织方式。点击任意词,可追踪频次、出现位置及半开区间 [first, second)

容器思维

词频与位置索引

频次适合 map<string,int>;一个词对应多个位置时,可理解为 multimap<string,size_t>

0总词数
0不同词
0目标词频
有序当前观察方式
频次原序列位置(从 0 起)

equal_range 区间探针

在按键排序的多重索引上,所有等价键形成连续区间;空范围也有确定的插入位置。

比较器:顺序与等价

严格弱序中的“等价”由 !comp(a,b) && !comp(b,a) 判定,不必等同于字符串完全相同。

比较comp(a,b)comp(b,a)关系

简化哈希桶实验

调整桶数与“盐值”,观察碰撞、桶分布和负载因子。盐值仅用于演示哈希结果变化。

5
3
0load factor
0发生碰撞的桶
0最长桶链
Σ简化哈希
单元素桶碰撞桶