我需要一些建议来选择一种排序算法来为这个问题编码。
在第一阶段,程序将从数据库中获取客户端 ID 和相应的哈希(可能会使用结构)。可能有 0 条或数千条记录。
在第二阶段,程序将使用从 XML 文件中读取的记录来完成该集合。我已经构建了流解析器。XML 文件在发票数据之前依次包含所有客户信息。
第二阶段完成后,程序将读取发票数据。对于每张发票,都有一个 clientID,这必须从一组客户中进行检查。发票的数量可以是数百万条记录。
我最初的想法。由于我不知道会有多少客户记录,我必须使用链表动态添加内存。在第二阶段结束时,我可以创建一个按 clientID 排序的数据数组,以便我可以执行进一步的搜索,每个发票一个,可以快速检索,也许使用二分搜索。
我想知道你建议我如何处理这种情况。我应该使用什么排序算法?(我将使用 C 进行编码)。