LeetCode | 初入LeetCode,一刷Two Sum

来源:互联网 发布:meanshift算法opencv 编辑:程序博客网 时间:2024/06/06 21:07

题外话:这是第一次做LeetCode,微软的OJ很高大上有没有!有没有!有没有!接近两年没有正式碰过OJ了,表示C已经忘记怎么写,C++感觉就没有学过啊!题外话ending。。。总之就是一起努力啊!(不是ending了吗哈哈哈


1. 首先,要做题就现在LeetCode平台上注册,感觉注册没有任何难度啊,界面也很友好!

2. 就开始做人生中第一道LeetCode了。


实话说,我还是不太适应全英文啊!(英文水平严重有待提高。。。)所以,我看了第一题之后就关了电脑,到现在才开始做啊,中间省略一个月时间!第一题Two Sum在网上的解答那是铺天盖地,所以我还是决定自己写一下解题思路吧!哇哈哈哈~


题目:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution.

题意:

输入一个整数数组,指定一个目标和的数值target,要求找到数组中正好加和等于target的两个数,并且返回这两个数的索引值。并且题干中假设数组中一定存在解。


题中还给出一个示例:

Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
这道题是入门的!所以直接用暴搜就可以了,我的代码如下。(其实很久没有用C++,做题才发现当年没有认真好好学啊。。。)所以,做OJ的题目还可以巩固基础知识!哇哈哈哈~

class Solution {public:    vector<int> twoSum(vector<int>& nums, int target) {        vector<int> result;        for( int i = 0; i < nums.size()-1; i++ )        {            for( int j = i + 1; j < nums.size(); j++ )            {                if( nums[ i ] + nums[ j ] == target )                {                    result.push_back( i );                    result.push_back( j );                    return result;                }            }        }        return result;    }};


因为是熟悉平台的第一题(其实就是懒= =)所以没有思考优化的方法,以下是运行时间的排名,真的很靠后。。。



解锁一项新技能,接下来好好努力吧!

ps:最近电视剧看的好压抑,希望收视率会好起来!

pps:OST真的很好听。。。

ppps:都说做人不能太贪心,但是我写到了ppps^0^







0 0
原创粉丝点击