问题描述:
给定一个由n个整数构成的集合S和另一个整数x,求解S中所有的两个数的组合,其和为x
算法分析:
首先通过Merge Sort进行排序,复杂度:O(NlgN)
然后利用Binary search查找x- s[i],这里需要一个循环来遍历整个集合,所以复杂度为N*O(lgN)= O(NlgN)
整个算法的复杂度为:O(NlgN)
C++实现代码如下:
最后
以上就是丰富老鼠最近收集整理的关于求解所有集合中和为给定值的组合的全部内容,更多相关求解所有集合中和为给定值内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复