在pb_ds中,哈希数据结构有两个:
__gnu_pbds::gp_hash_table
和__gnu_pbds::cc_hash_table
STL中则有std::unordered_map
和std::unordered_set
实际做题中蒟蒻发现四者速度似乎比较玄学。以gp_hash_table
和unordered_map
为例,蒟蒻做题时发现有时gp_hash_table
快,而有时unordered_map
更快。
bdfs只发现gp_hash_table
比cc_hash_table
略快,但似乎更容易被卡(我太菜了根本看不懂原理)。没有搜到其与STL的速度比较。
所以正式比赛中应当使用哪一个?或者什么时候选择什么?
(这家伙可能不在,回复可能不及时)