由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 请教:C++, 忽略大小写的字符串比较
相关主题
HashMap, HashTable and Array 有啥区别white board coding的时候如果遇到hash table
问个常见算法题的变形A家新鲜面经--都是经典题
问一个 String array sorting 的题。T家电面面经并且不解为何被秒拒
常见的string hash function问一道关于字符串的面试题
google phone screenHackerRank find string..
两道简单的面试题问一道题(8)
问一道C++编程题请教一道题:Remove adjacent duplicate char recursively fro
攒rp,Amazon两轮电话面经MS intern 电面被拒,附上面试过程
相关话题的讨论汇总
话题: c++话题: hash话题: 大小写话题: 字符串话题: ascii
进入JobHunting版参与讨论
1 (共1页)
b****y
发帖数: 278
1
本人菜鸟, 请教一个C++ 问题,
对n个字符串,进行比较时,要求忽略大小写, 有没有什么快速的方法? 用ASCII码转
换太慢了
多谢了
r********g
发帖数: 1351
2
不用ASCII怎么能认出来是同一个字母的大小写呢?
算法是另一个方面,我觉得hashtable最好了。

【在 b****y 的大作中提到】
: 本人菜鸟, 请教一个C++ 问题,
: 对n个字符串,进行比较时,要求忽略大小写, 有没有什么快速的方法? 用ASCII码转
: 换太慢了
: 多谢了

y**i
发帖数: 1112
3
比较相等或者差额等于'a'-'A'?

【在 b****y 的大作中提到】
: 本人菜鸟, 请教一个C++ 问题,
: 对n个字符串,进行比较时,要求忽略大小写, 有没有什么快速的方法? 用ASCII码转
: 换太慢了
: 多谢了

x***y
发帖数: 633
4
#include
toupper() or tolower()
b****y
发帖数: 278
5
对, 我也想用hash table
不过,需要让“acd”,"Acd","ACD", 产生同样的key;
您是怎样用ASCII? 假设一个个字母地把他们转化成 都小写是不是太费时了?

【在 r********g 的大作中提到】
: 不用ASCII怎么能认出来是同一个字母的大小写呢?
: 算法是另一个方面,我觉得hashtable最好了。

r********g
发帖数: 1351
6
这个可以通过hash函数来做吧,比如你只保存前n个字母的hash index,可以用:
a[] => the string
f(a) = 0;
large primt number = p;
for(int = 0; i < n; i++) {
f(a) = f(a)*26+(a[i] > 'Z' ? (a[i] -'a' ): (a[i]-'A'));
f(a) %= p;
}

【在 b****y 的大作中提到】
: 对, 我也想用hash table
: 不过,需要让“acd”,"Acd","ACD", 产生同样的key;
: 您是怎样用ASCII? 假设一个个字母地把他们转化成 都小写是不是太费时了?

b****y
发帖数: 278
7
谢谢了, 这两个函数很有用哈~ 多谢了

【在 x***y 的大作中提到】
: #include
: toupper() or tolower()

B*****t
发帖数: 335
8
I think this has nothing to do with hash.

【在 r********g 的大作中提到】
: 不用ASCII怎么能认出来是同一个字母的大小写呢?
: 算法是另一个方面,我觉得hashtable最好了。

r********g
发帖数: 1351
9
Maybe I misunderstood. But I was thinking of N strings, and find the
duplicated
strings (or something related to comparison). In that case you need to find
some way
to avoid searching the list frequently.

【在 B*****t 的大作中提到】
: I think this has nothing to do with hash.
z***e
发帖数: 5393
10
faint...
if uing api, on windows, you can use stricmp or strnicmp or _tcsnicmp ...
check msdn.

【在 b****y 的大作中提到】
: 谢谢了, 这两个函数很有用哈~ 多谢了
1 (共1页)
进入JobHunting版参与讨论
相关主题
MS intern 电面被拒,附上面试过程google phone screen
一个google面试题两道简单的面试题
请教一个phone interview 问题问一道C++编程题
F家电面:group Anagrams攒rp,Amazon两轮电话面经
HashMap, HashTable and Array 有啥区别white board coding的时候如果遇到hash table
问个常见算法题的变形A家新鲜面经--都是经典题
问一个 String array sorting 的题。T家电面面经并且不解为何被秒拒
常见的string hash function问一道关于字符串的面试题
相关话题的讨论汇总
话题: c++话题: hash话题: 大小写话题: 字符串话题: ascii