参考快速选择算法
也就是分治算法,先分批读入,然后快速选择
这方面资料网上很多,例如:http://www.cnblogs.com/yihui_L/archive/2008/10/25/1319551.htmlPS:你问的这东西与语言种别基本上是没关系的

解决方案 »

  1.   

    还以为是数据库呢,
    数据库中简单,
    SELECT COUNT(*) FROM TB WHERE COL=6258000145241
    程序中看能不能转换成数据,再用CONTAINS()来判断一下
      

  2.   

    使用.NET的话,可以用File类来操作,打开文件并搜索吧  Version Information 
    .NET Framework
    Supported in: 3.5, 3.0, 2.0, 1.1, 1.0.NET Compact Framework
    Supported in: 3.5, 2.0, 1.0XNA Framework
    Supported in: 3.0, 2.0, 1.0这个是该类的支持版本信息,有Compact说明就能在嵌入系统中用了,具体lz自己实践了。
      

  3.   

    谢谢回帖,但文件内容是无序的,搜索起来速度很慢的!有没有办法快速查询,就像是UEDIT里文本查找,速度奇快,不知道用的是什么方法?
    还有我是在CE下进行查找!谢谢!
      

  4.   

    请问多大的文件?感觉不会慢啊,有很多种打开文件的方法,如OpenRead优化为只用于读,然后用FileStream类来获取里面的数据,使用Seek方法可以快速在打开的文件里定位。这些通常都很高效的,不过CE下没有测试过。如果要真正高效的话,我想还是不要用.NET或JAVA了,机器语言比较合适吧
      

  5.   

    机器内存将就了,使用多线程吧。
    使用20个线程,每个线程分配6万数据。
    弄一个全局变量,那个线程先找到,则终止所有的线程。
    这个东东,以前弄过,当时的效果是:
    30多万数据开了5个线程,3秒钟左右可以搞定。
    CPU将近400M,内存不到20M。
    我使用的是C++