C字符串比较VS哈希比较

<p>我需要一个字符串比较在C其他多个常量字符串。我很好奇这是更快,散列我要比较,并将其与其他所有的常量字符串的哈希值或只是比较字符串作为字符串的字符串。预先感谢您 P&gt; </p><p>感谢您为我将做的比较多的答案。任何人都可以给我一个好,速度快,低资源密集型算法使用?我所知道的唯一的哈希MD5和我有一种感觉,就是超必杀。 P&gt; </p><p>我也想补充的是,字符串是也许20或30个字符的绝大多数是约7最大。 P&gt;
</p>

70 浏览 1 回复
  字符   字符串   比较   gt   哈希  

回复

    <p>时比较会被一次或多次做了什么?如果比较将是一次做,那么你很可能会更好做直比较。如果你将需要非常多的字符串比较这套常量字符串,那么你或许可以用哈希做节省时间,从长远来看。 P&gt; </p><p>这是一个很简单的问题,你可以很容易地把它写两种方式,看看哪种适用于一组有代表性的输入越好。 P&gt; </p><p>如果你想针对一组其他字符串的主题串匹配,你可以考虑使用的<a href="htt p://en.wikipedia.org/wiki/Aho %E2%80%93Corasick_string_matching_algorithm”相对=“nofollow的”&gt;阿霍Corasick字符串匹配算法&lt;/A&gt;。它使用了一个线索来匹配在单次通过针对所有的目标串的主体(它也很容易实现)。&lt;/ P&gt;
    &lt;/div&gt;"></p>

    余燕

相关信息

字符常量:\ 000 \ XHH

<p>任何人都可以请解释字符常量\\ 000和用法\\ XHH即八进制的字符常量数字和十六进制数字? P&gt; </p>

30 浏览 1 回复   字符   gt   一个   进制   数字  

字符串比较。你如何比较字符串的std :: wstring的? WRT STRCMP

<p>我想比较,我预计会有所兼容两种格式,因为它们都是一般的字符串。我试图用一个字符串和std :: wstring的执行STRCMP,并作为我敢肯定,C ++大师知道,这根本不会编译。是否有可能以比较这两种类型的?有一个简单的转换吗? P&gt; </p>

50 浏览 1 回复   字符   gt   字符串   一个   转换  

我仍然用C ++ / CLI字符串常量^

<p>在C ++中它的建议有常量,正确性无处不在。但是,由于在.NET环境中,字符串的内容不能改变,(新的字符串将被创建),我还是写字符串常量^ P&gt; </p>

13 浏览 1 回复   字符串   字符   常量   gt   ++  

字符串比较不会在Visual C ++ 2005的工作

<p>如果从注册表获取一个gring,当我把它放在一个消息框,它正确显示。 :: MessageBoxW(0,(LPCWSTR)achValue,\_T(“找到”),MB\_YESNO); P&gt; </p><p>的值存储在archValue这是一个DWORD。我想要做的就是把它比作以下字符串“2.0.7045.0”,但STRCMP没有为我工作。 P&...

31 浏览 1 回复   gt   一个   字符   工作   字符串  

C ++需要一个字符串比较200.000字

<p>在我的C ++程序... P&gt; </p><p>在程序字符串“foo”用户类型。 P&gt; </p><p>我需要的<strong>比 STRONG&gt;此字符串来我的琴弦,在TXT文件中写:这个字符串是名词! (或形容词...) P&gt; <p>我有几个TXT文件 -...

69 浏览 1 回复   gt   文件   字符串   字符   需要