请假大家一道BB的题# JobHunting - 待字闺中
h*0
1 楼
Find out the first non duplicate character in a string.
eg: "nasa" output: 'n'
只允许扫一遍字符串, 如果只是用hash,需要扫2遍。 我的想法是用double linked
list和hash。 第一次读到char, 就放到linkedlist结尾, 并插入(char, 对应node
pointer)到hash中。 如果第二次读到这个char, 把这个node删除, 将hash[char]
的value变成NULL。 如果删除的node为cur, 那么删除cur, 并让cur指向下一个。 最
后返回cur的data。
这个方法可以吗?
eg: "nasa" output: 'n'
只允许扫一遍字符串, 如果只是用hash,需要扫2遍。 我的想法是用double linked
list和hash。 第一次读到char, 就放到linkedlist结尾, 并插入(char, 对应node
pointer)到hash中。 如果第二次读到这个char, 把这个node删除, 将hash[char]
的value变成NULL。 如果删除的node为cur, 那么删除cur, 并让cur指向下一个。 最
后返回cur的data。
这个方法可以吗?