算法(4th ed)(59):基础——基础编程模型 3.10.3

阅读数:24 2019 年 10 月 30 日 07:09

算法(4th ed)(59):基础——基础编程模型 3.10.3

(二分查找:白名单过滤)

如果可能,我们的测试用例都会通过模拟实际情况来展示当前算法的必要性。这里该过程被称为白名单过滤。具体来说,可以想象一家信用卡公司,它需要检查客户的交易账号是否有效。为此,它需要:

  • 将客户的账号保存在一个文件中,我们称它为白名单
  • 从标准输入中得到每笔交易的账号;
  • 使用这个测试用例在标准输出中打印所有与任何客户无关的账号,公司很可能拒绝此类交易。

在一家有上百万客户的大公司中,需要处理数百万甚至更多的交易都是很正常的。为了模拟这种情况,我们在本书的网站上提供了文件 largeW.txt(100 万个整数)和 largeT.txt(1000 万个整数)其基本情况如图 1.1.9 所示。

算法(4th ed)(59):基础——基础编程模型 3.10.3

图 1.1.9 为 BinarySearch 测试用例准备的大型文件

评论

发布