1.两数之和-力扣(LeetCode)

题目:

解题思路:

在解决这个问题之前,首先要明确两个点:

1、参数returnSize的含义是返回答案的大小(数目),由于这里的需求是寻找数组中符合条件的两个数,那么当找到这两个数时,将*returnSize的值直接赋为2。

2、不要忽略注释中的注意点,返回的是两个数组成的数组,那么就需要在本函数中为该数组动态开辟空间,使得返回内容可以在该函数外使用。

题目中要求不能使用两次相同的元素,对这句话的理解是,返回的两个符合条件的数,其下标应该是不同的。那么就要在嵌套循环进行遍历时,避免内外循环遍历到相同下标的元素。

代码:

cpp 复制代码
int *twoSum(int *nums, int numsSize, int target, int *returnSize)
{
    int i,j;
    int *returnNum =  (int *)malloc(sizeof(int)*2);
    for(i = 0; i < numsSize; i++)
    {
        for(j = i+1; j < numsSize; j++)
        {
            if(nums[i] + nums[j] == target)
            {
                returnNum[0] = i;
                returnNum[1] = j;
                *returnSize = 2;
            }
        }
    }
    return returnNum;
}
相关推荐
Ludicrouers38 分钟前
【Leetcode-Hot100】字母异位词分组
算法·leetcode·职场和发展
爱笑的Sunday38 分钟前
【LeetCode 题解】数据库:1321.餐馆营业额变化增长
数据库·sql·leetcode
weixin_445054723 小时前
力扣刷题-热题100题-第34题(c++、python)
c++·python·leetcode
梭七y4 小时前
【力扣hot100题】(075)数据流的中位数
算法·leetcode·职场和发展
梭七y4 小时前
【力扣hot100题】(073)数组中的第K个最大元素
算法·leetcode·职场和发展
Joe_Wang55 小时前
[leetcode]1786. 从第一个节点出发到最后一个节点的受限路径数(Dijkstra+记忆化搜索/dp)
算法·leetcode·图论
雾月5511 小时前
LeetCode 941 有效的山脉数组
java·开发语言·数据结构·算法·leetcode·职场和发展
一只小透明啊啊啊啊15 小时前
【leetcode 100】贪心Java版本
java·算法·leetcode
Swift社区17 小时前
LeetCode 249 解法揭秘:如何把“abc”和“bcd”分到一组?
算法·leetcode·职场和发展
Tisfy17 小时前
LeetCode 3396.使数组元素互不相同所需的最少操作次数:O(n)一次倒序遍历
算法·leetcode·题解·数组·遍历·哈希表