两数之和--练习题

简介: 两数之和--练习题

找个算法题练练手,顺便记录一下。


描述


给出一个整型数组 numbers 和一个目标值 target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。


(注:返回的数组下标从1开始算起,保证target一定可以由数组里面2个数字相加得到)


数据范围:2\leq len(numbers) \leq 10^52≤len(numbers)≤105,-10 \leq numbers_i \leq 10^9−10≤numbersi≤109,0 \leq target \leq 10^90≤target≤109


要求:空间复杂度 O(n)O(n),时间复杂度 O(nlogn)O(nlogn)


微信图片_20230117225025.png

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param numbers int整型一维数组 
 * @param numbersLen int numbers数组长度
 * @param target int整型 
 * @return int整型一维数组
 * @return int* returnSize 返回数组行数
 */
int* twoSum(int* numbers, int numbersLen, int target, int* returnSize ) {
    // write code here
    int i=0,j=0;
    int num = 0;
    static int retAry[2];
    for(i=0; i<numbersLen-1; i++)
    {
        if(numbers[i] > target)
            continue;
        for(j=i+1; j<numbersLen; j++)
        {
            if(target == numbers[i]+numbers[j])
            {
                 retAry[0] = i+1;
                 retAry[1] = j+1;
                 *returnSize = 2;
                break;
            }              
        }
    }
    return retAry;
}





目录
相关文章
|
存储 Java Spring
ThreadLocal用法
ThreadLocal用法
108 0
|
Python
Matplotlib axes类
Matplotlib axes类
52 1
|
测试技术 Go 数据安全/隐私保护
Go语言包管理不再痛,包引用问题彻底解决
Go语言包管理不再痛,包引用问题彻底解决
103 0
|
9月前
|
存储 调度 iOS开发
MacOS环境-手写操作系统-32-进程挂起和恢复
MacOS环境-手写操作系统-32-进程挂起和恢复
78 0
|
11月前
|
存储 人工智能 NoSQL
AI自动化!redis高效部署脚本
AI自动化!redis高效部署脚本
109 0
|
缓存 自然语言处理 前端开发
JVM系列8-前端编译与优化
JVM系列8-前端编译与优化
69 0
|
关系型数据库 MySQL 数据库
MyBatisPlus-AUTO策略及INPUT策略
MyBatisPlus-AUTO策略及INPUT策略
197 0
|
存储 Java 索引
如果面试也能这样说HashMap,那么就不会有那么多遗憾!(下)
如果面试也能这样说HashMap,那么就不会有那么多遗憾!
189 0
|
JavaScript 前端开发 网络架构
如何在 Vue.js 中将字符串的第一个字母大写
在 Vue 中将字符串的第一个字母大写:用 [0] 获取字符串的第一个字母;使用 .toUpperCase() 将此字母大写;使用 .slice(1) 获取字符串的其余部分。将结果加在一起。
如何在 Vue.js 中将字符串的第一个字母大写
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问