c# - 从给定的数字对中查找不成对的数字

标签 c# algorithm math

是否有任何算法可以从给定的成对数字列表中找到不成对的数字。例如在 {(1,2),(2,3),(3,4)} 中,对 (1,3) 和 ( 2,4) 从未配对过。

最佳答案

你可以这样做:

  1. 遍历所有对并构建一组出现在集合中的所有数字。
  2. 构建所有可能的数字对,将结果存储在不同的集合中。
  3. 遍历原始列表中的所有对,并从所有对的集合中删除您找到的每个对。
  4. 现在剩下所有未出现在原始集中的对。

当然,这假设您只关心原始集合中的值对。例如, (1, 5) 对也不在您的示例中。也不是(猫,狗)。

这在时间 O(n2) 中运行,其中 n 是原始对组中表示的数字的数量。

希望这对您有所帮助!

关于c# - 从给定的数字对中查找不成对的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12146554/

相关文章:

c# - WPF 取消按钮

c# - 播放音频文件

Android FileOutputStream.write : got java. io.IOException:数学结果不可表示

c# - 如何将 span 元素放入 ActionLink MVC3 中?

javascript - 单击按钮在 GoogleMap 中移动

algorithm - 选择用于学习数据结构和算法的编程语言

Javascript 正弦/余弦泰勒展开

algorithm - 在 log n 时间内解决类似斐波那契的递归问题

algorithm - 如何对不断变化的数据流进行聚类

c# - 按特定项目对枚举类型列表的成员进行排序