ZKX's LAB

检测数组里是否有两个数之和等于某个数 给定数组求两个数的和等于目标值

2021-04-26知识9

如何用c语言从一组给定数中找到一个数或者几个数的和使其值最接近指定的数 1.排除掉大于给定数的数字。2.对于剩余的n个数字,一一查询n个数的所有可能的和。首先查询任意单个数字(Cn1个),然后查询任意两两的和(Cn2个),然后查询任意三三的和(Cn3个)…一直记录下当前最好结果,当最好结果恰好相等就输出,没找到就继续找。最坏情况下,需要一直查询到最后n个数字的和。所有的加起来一共计算2^n-1次。但是一般不会这么差。

算法:找数组中两个数之和为目标数的数组的下标,给定一个整数数组um和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

如何在一个数组中求出任意几个数的和等于给定数 这个问题2113又称为“子集和问5261题”(也就是给定一个整4102数集合和一个定值,1653从一个集合版中选取一个子集,使得子权集中所有数的和等于给定的值,具体的可以,google 子集和问题),这是一个NP完全问题,不存在多项式时间的解,所以没有好的算法。

#给定数组求两个数的和等于目标值

qrcode
访问手机版