LC 数组与字符串 - 两数之和
生活随笔
收集整理的這篇文章主要介紹了
LC 数组与字符串 - 两数之和
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目
解題
這道題其實(shí)不難,一般人想到的就是暴力破解法,寫兩層循環(huán)做判斷就可以了;
但是我想的是能盡量花少的步驟和時(shí)間去做,具體想法是這樣的:遍歷一次,每次計(jì)算差值,然后判斷差值在不在當(dāng)前數(shù)組,且不是當(dāng)前值,比如:數(shù)組為【2,3,7,9】,目標(biāo)是9,遍歷第一個(gè)值是2,用目標(biāo)值9-2=7,然后查看7在不在數(shù)組中,且下標(biāo)不是當(dāng)前值的下標(biāo)0,如果運(yùn)氣好第一個(gè)值,第一次就找到了,就算運(yùn)氣不好也只用遍歷一次。
源碼:
/*** @param {number[]} nums* @param {number} target* @return {number[]}*/ var twoSum = function(nums, target) {for(let i=0;i<nums.length;i++){let a = nums.indexOf(target - nums[i]);if(a > -1 && a != i){return [i,a];break;}} };結(jié)果
結(jié)果雖然不錯(cuò),但是還有更厲害的算法,繼續(xù)加油!
總結(jié)
以上是生活随笔為你收集整理的LC 数组与字符串 - 两数之和的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python url拼接_python学
- 下一篇: linuex查看繁忙_[个人笔记] 关于