无序的存放字符串的链表,在查找时有没有速度快点的更优化的算法?

解决方案 »

  1.   

    如果链表很大,可以先遍历并存储一下所有链表中元素的地址,然后分割成N块(判断CPU线程数得到N),多线程处理。
    这样速度就和CPU的线程数基本成正比了。
    这样的话如果链表很大,第一次遍历花的时间长点,但是后面查找会快很多。
      

  2.   

    多线程在单cpu没多大用吧。
    也许可以对关键字用散列表建立索引
      

  3.   

    如果你只查找一遍,那只能循环找如果可能多次查找,可以先把它们排序,或者使用Hashtable这样在排序的时候或者往Hashtable里面插入时慢点查找就快了,一劳永逸
      

  4.   

    链表里元素的位置变化比较频繁,这链表是为了实现LRU算法而作的
      

  5.   


    现在电脑还有多少是单线程的Core2是2核2线程,i7是4核8线程,等等
    索引的话,也可以,同样第一次建立索引的时候很慢。
    如果索引+多线程不是更好?