由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 不改变排序的hash算法?
相关主题
哈希表能用来排序吗???CISCO的问题。面试题讨论:如何在一批文件中找到相同的文件
请教个面试题, tree和hashmap的区别问一道老题
大量字串的排序问题。可能不一定有解amazon intern一共几面, 加面经
报个G的电面L一个电面题
how to query in the universal hash table?WhatsApp 面经
曾经fail掉的一个电话面试以及题目hash_map 的遍历问题
5分钟前G的电面类似LRU Cache的题应该怎么练习?
请教一道公司面试题G家面筋。
相关话题的讨论汇总
话题: hash话题: 排序话题: 算法话题: 字串话题: 改变
进入JobHunting版参与讨论
1 (共1页)
e****9
发帖数: 316
1
有n个很长的字符串,比如
abcd....
bacd....
cabd....
........
有没有一个hash算法,使第一个字串的生成的hash值小于第二个,第二个hash值小于第
三个?
就是hash之后,不改变原来的排序。
e****9
发帖数: 316
2
技术上感觉是没有。不知道大家有没有好的想法。
l*********8
发帖数: 4642
3
http://lemire.me/blog/archives/2011/08/29/why-cant-hash-tables-

【在 e****9 的大作中提到】
: 有n个很长的字符串,比如
: abcd....
: bacd....
: cabd....
: ........
: 有没有一个hash算法,使第一个字串的生成的hash值小于第二个,第二个hash值小于第
: 三个?
: 就是hash之后,不改变原来的排序。

i*********7
发帖数: 348
4
LinkedHashMap.
Java有这样一个container。
它实现不了你想说的hash值排序。但是它可以用链表维持原来插入的顺序不变。
你也可以自己用hash_map加一个链表做做试试。实现不难
e****9
发帖数: 316
5
用hash的目的是缩减所需要的存储
比如下面的字串长度可能是1000生成long的hash只要8 bytes.
abcd....
但是同时还要用这些字串来排序,hash之后排序完全没有了。
现在就想要没有一个算法,既可对原来的字串做某种压缩,并且压缩之后的不改变原来
的排序顺序。
c********t
发帖数: 5706
6
用hashtable可以不?

【在 e****9 的大作中提到】
: 用hash的目的是缩减所需要的存储
: 比如下面的字串长度可能是1000生成long的hash只要8 bytes.
: abcd....
: 但是同时还要用这些字串来排序,hash之后排序完全没有了。
: 现在就想要没有一个算法,既可对原来的字串做某种压缩,并且压缩之后的不改变原来
: 的排序顺序。

s*****1
发帖数: 134
7
TreeMap?
S******t
发帖数: 151
8
我认为理论上不可能有这样的Hashing Function,如果有的话,那么对这个h(h(x))再
取hash,Iterate若干次之后,如果是为了保序,一定会收敛到一个不动点。
也就是说类似于
if x < y then h(x) < h(y)
那么最终h*(x) < h* (y) for all x and y
这个只有可能h(x) = x自身吧?
w****a
发帖数: 710
9
自己实现计算hashCode,比如原来32位的hash你扩张到64位
后32位还是hash 前32位用于排序
1 (共1页)
进入JobHunting版参与讨论
相关主题
G家面筋。how to query in the universal hash table?
问几个关于hash, map, set的问题曾经fail掉的一个电话面试以及题目
被recruiter问到的2个基础题5分钟前G的电面
UBER 电面请教一道公司面试题
哈希表能用来排序吗???CISCO的问题。面试题讨论:如何在一批文件中找到相同的文件
请教个面试题, tree和hashmap的区别问一道老题
大量字串的排序问题。可能不一定有解amazon intern一共几面, 加面经
报个G的电面L一个电面题
相关话题的讨论汇总
话题: hash话题: 排序话题: 算法话题: 字串话题: 改变