当前位置:网站首页>[C题目]力扣1. 两数之和
[C题目]力扣1. 两数之和
2022-08-02 20:33:00 【GLC8866】
思路: 枚举所有的元素组合,满足和为target时,将两个元素下标赋值到数组nums的第1和第2个位置,修改数组的长度为2,并且返回数组。
注意:这里虽然用动态申请空间也能通过,但是调函该函数的人可能不知道你动态申请了空间,如果多次调用又不释放,就会导致内存泄漏。出题者给出了*returnSize的目的就是想让你利用数组nums作为"容器"储存两个元素的下标传递出来,而之所以用指针的形式是因为只有通过指针才能改变函数外的数组的长度(变量)。
int* twoSum(int* nums, int numsSize, int target, int* returnSize)
{
for(int i=0;i<numsSize;i++)//nums[i]和它后面的所有元素一对对组合,看是否和为target。
{
for(int j=i+1;j<numsSize;j++)
{
if(nums[i]+nums[j]==target)//满足要求就把下标赋值给数组num前两位,数组nums作为传递数据的"容器"。
{
nums[0]=i;
nums[1]=j;
*returnSize=2;//改变数组的长度,用指针才能改变函数之外的变量。
return nums;
}
}
}
return nums;
}
边栏推荐
猜你喜欢
随机推荐
.NET性能优化-你应该为集合类型设置初始大小
golang源码分析:time/rate
典型相关分析CCA计算过程
Xcode13.1 run engineering error fatal error: 'IFlyMSC/IFly h' file not found
VisualStudio 制作Dynamic Link Library动态链接库文件
Informatics Olympiad All-in-One (1259: [Example 9.3] Find the longest non-descending sequence)
一款免费的容器安全 SaaS 平台使用记录
MSTP与STP
The Orsay in Informatics (1256: Bouquet for Algernon)
Solve the docker mysql can't write Chinese
Packages and packages, access modifiers
C# Monitor class
Nervegrowold hands-on learning deep learning V2 - Bert pre training data set and code implementation
软件成分分析:华为云重磅发布开源软件治理服务
《分布式微服务电商》专题(一)-项目简介
回文自动机+CodeTON Round 2 C,D
用户之声 | GBASE南大通用实训有感
Flutter 常见异常分析
华为设备配置BFD多跳检测
Implement fashion_minst clothing image classification









