有五千个字符串的2维数组要搜索其中的字符串,有没有比较快速的方法我目前是用循环判断

解决方案 »

  1.   

    如果只是字符串完全对比不考虑大小写,可以用md5 list
    如果是字符串完全对比,可以用hash表 
    如果是字符串对比,考虑like等因素可以用数据库
      

  2.   

    参考数据库字符串的优化,, hashbytes  
    所有字符串转换成一个整数,然后用整数做索引.
      

  3.   

    如果只是字符串完全对比不考虑大小写,可以用md5 
    如果是字符串完全对比,可以用hash表  
    如果是字符串对比,考虑like等因素可以用数据库
      

  4.   


    是完全对比,我目前要把数据写在程序中用字符串然后转换成hash表  查询快
    还是
    直接用字符串数组循环快呢?
      

  5.   

    比如3万条速度差很多吗?
    不多的  感觉转换成hash表  也麻烦
      

  6.   

    如果是完全对比考虑大小写,可以事先把字符串进行md5加密,之后每次查询时查询字符串的md5码虽然第一次入库会比较慢,但是查询速度会非常快
    此方法适用于超长字符串的查询类似memo如果字符串比较短可以使用带hash排序的容器例如thashstringlist