作者:你可知马羔_523 | 来源:互联网 | 2023-02-04 15:48
Iamlookingforthefastestwaytomapastringtotwointegers,andmapthoseintegerstothestri
I am looking for the fastest way to map a string to two integers, and map those integers to the string.
我正在寻找将字符串映射到两个整数的最快方法,并将这些整数映射到字符串。
This is the structure for each element:
这是每个元素的结构:
- char* name
- uint32_t license_id
- uint32_t ss_id
Each field is unique, all fields are constants, and no elements will be added after compile-time. Because they are unique, I want to make the following search functions:
每个字段都是唯一的,所有字段都是常量,编译后不会添加任何元素。因为它们是唯一的,我想制作以下搜索功能:
uint32_t get_license_from_name(char *name);
uint32_t get_ssid_from_name(char *name);
void get_name_from_license(uint32_t license, char *name);
void get_name_from_ssid(uint32_t ssid, char *name);
From searching, I know it is possible to create a separate hashmap for each pair of search terms. Is this my best choice? I was hoping I could take advantage of the fact that these values are always known, unlike other questions I found.
从搜索开始,我知道可以为每对搜索项创建单独的散列映射。这是我最好的选择吗?我希望我可以利用这些价值总是已知的事实,这与我发现的其他问题不同。
Is there an O(1) solution to this problem?
这个问题有O(1)解决方案吗?
2 个解决方案