leetcode 第1题【两数之和】
今天开始刷 leetcode 了,坚持每天做
因为不太会编程,只是想记录下来,若有错误,欢迎指正。
/**
* Note: The returned array must be malloced, assume caller calls free().
*/
int* twoSum(int* nums, int numsSize, int target, int* returnSize) /*定义一个指针函数towSum,最后返回值为指针*/
{
for(int i=0;i<numsSize;i++) /*外层循环,遍历数组中每一个数*/
{
for(int j=i+1;j<numsSize;j++) /*内层循环,遍历数组中第i个数之后的每一个数,当外层循环到最后一个数时,j<numSize不成立,循环结束*/
{
if(nums[i]+nums[j]==target) /*判断两数之和是否等于目标值*/
{
int* end=malloc(sizeof(int)*2); /*定义一个end指针,并且分配2个4字节(int)的内存空间*/
end[0]=i;
end[1]=j;
*returnSize=2; /*这个参数应该是用来判断是否返回结果的标准*/
return end;
}
}
}
*returnSize=0;
return 0;
}
要整理的知识点:指针相关知识、malloc用法、函数返回值类型