返回两个求和等于给定值的数组下标--算法练习
题目:给定一个整数数组,返回两个数组元素的下标,使它们相加得到一个特定值。
提示:您可以假设每个输入都只有一个答案。
例子:
假设 nums = [2, 7, 11, 15], target = 9,
因为 nums[0] + nums[1] = 2 + 7 = 9,
所以返回为:return [0, 1].
代码实现
/**
* Note: The returned array must be malloced, assume caller calls free().
*/
int* twoSum(int* nums, int numsSize, int target) {
int i,j;
printf("the numbersize is %d
",numsSize);
int* array=malloc(sizeof(int)*2);
for(i=0;i<numsSize;i++)
{
for(j=i+1;j<numsSize;j++)
{
if(target==(*(nums+i)+*(nums+j)))
{
printf("i is %d
",i);
*array=i;
*(array+1)=j;
printf("the first number is %d",*array);
return array;
}
}
}
return 0;
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: yiic的基本命令参数规则
- 下一篇: 浅谈MySQL数据库备份的几种方法