我不确定这是否适用于此网站。但我没有找到任何地方提出这样的问题。
在接受采访时,我被问到,服装店的数据库中有超过200万种产品,这些产品没有标签,没有类别或其他任何东西,只是产品名称。如何以最有效的方式搜索该数据库中的产品?
我回答了线性搜索。但面试官并不满意。
答案 0 :(得分:0)
哈希表 只需创建哈希函数即可将数据库中项目的名称转换为数字,然后仅通过其索引找到该元素
function hash(name){
/*convert a name into a number eg by converting each letter into a corresponding ascii number and multiplying it by a random number(to avoid collisions however there are many more efficient ways to avoid collisions and reducing memory requirements*/
return name //which will be hashed
}
database[hash(name)]