大侠们,帮我看看我的这个想法有 必要 实现 吗?(字符串排序)
假如现在有1000个字符串需要排序:
我的想法是:
程序运行过程:
获取文件 - 文件分割 - 动态生成批处理 - 内容排序程序 排序 - 文件合并 - 文件检索(类似归并排序) - 输出到目标文件 - 成功!
细节:
1 主程序:
参数 pathname\name.txt 200 5
pathname\name.txt //需要排序的文件
200 //每读取200行字符串后,写入一个单独的文件(最后为5个以name_%index%.txt)
5 //同时运行 内部排序程序的个数。
主程序在把文件分好后,动态生成-个批处理文件。
//准备5个内部排序程序,
//然后每个内部排序程序处理一个name_%index%.txt文件
copy 内部排序程序 5个
start 内部排序程序_%index%.exe name_%index%.txt
生成后,运行同时打开5个内部排序程序
-----
2 内部排序程序:(会同时启动5 个这样的程序)
参数: pathname\name_%index%.txt //由主程序分好的文件;
然后内部排序会把在这个文件中的字符串排序好后,重新写回。
--
3 内部排序程序全部排序完毕后,返回到主程序,
然后主程序会把这几个排序好的文件合并成一个文件,
利用一个26轮的循环(类似一个选择排序的方法)依次检查26个字母,每找到一行,就写到新生成的name.txt(要给用户看的文件)里面
4 清理垃圾。。
输出“排序成功。。”
等等待下一个文件