这是一个谷歌面试问题:
存储的电话号码大约有1000个,每个号码有10个数字。你可以假设每个数字的前5位在千个数字中是相同的。你必须执行下列操作: 如果给定的数字存在,则搜索。 把所有号码打印出来
节省空间的最有效方法是什么?
我回答了哈希表和后来的哈夫曼编码,但我的面试官说我的方向不对。请帮帮我。
使用后缀 try 有帮助吗?
理想情况下,存储1000个数字每个数字需要4个字节,因此总共需要4000个字节来存储1000个数字。从数量上讲,我希望将存储空间减少到 < 4000字节,这是我的面试官向我解释的。