代码
/**
* Note: The returned array must be malloced, assume caller calls free().
*/注意:返回的数组必须是malloced的,假设调用者调用free()。
int* twoSum(int* nums, int numsSize, int target, int* returnSize){//首先要清楚每一个英文什么意思。
int i,j,*a;
for(i=0;i<numsSize-1;i++) //从第一个元素开始暴力循环
{
for( j=i+1;j<numsSize;j++) //分别与后面的元素相加进行比较
{
if(nums[i]+nums[j]==target) //若两元素相加为整数目标值target
{
a=(int *)malloc(sizeof(int )*2); //为返回数组开创空间。
a[0]=i;
a[1]=j;
*returnSize=2;
return a; //返回数组
}
}
}
return 0;
}
思想:
用两个for循环一个个暴力解法。
带*一般是要返回的,但按题目要求要求malloc一个数组内存。必定要返回创建的数组。