我尝试解决一个电话业务问题,比如说有非常庞大的通话记录,每个通话记录主要包含“主叫号码”、“被叫号码”、“开始日期时间”、“持续时间”。
原始数据存储在 excel 中,我已将它们导入到 infragistics 的 ultragrid 控件中,例如 grid_A。
我想要做的是:对于grid_A外的某个通话记录,搜索grid_A并查找是否有匹配的记录。匹配意味着两条记录具有相同的“呼叫者号码”,“被叫号码”,并且两条记录具有相似“开始日期时间”,“持续时间”,例如,他们的“开始日期时间”是
00:10:00 和 00:12:00 ,仅相差 2 分钟。
因为这样的比较也会进行很多次并且当前的搜索代码太慢,我想如果我可以将网格数据更改为树结构。树i图像是这样的形式:
第一层是“caller num”,假设“caller num”有100个节点,下面是“caller num”,假设每个“caller num”,可能有1-10个“称为num”最后一级是“开始时间”和“持续时间”。
我想知道的是:如果这个结构可以用c#完成以及如何做到这一点,这个结构是否可以大大改善我的搜索。
期待您的帮助。