美文网首页
leetcode简单题自己的解法合集(一)

leetcode简单题自己的解法合集(一)

作者: 前端咸蛋黄 | 来源:发表于2019-04-21 19:40 被阅读0次

1. twoSum

var twoSum = function(nums, target) {
    for(let x=0;x<nums.length;x++){
        for(let y=x+1;y<nums.length;y++){
            if(nums[x] + nums[y] == target){
                return [x,y]
            }
        }
    }
};

7. reverse

//记得判断return数值的大小
var reverse = function(x) {
    if(x>=0){
        let y = parseInt((x+"").split("").reverse().join(""))
        return y>=Math.pow(2,31)-1?0:y
    }else{
        let y = parseInt((-x+"").split("").reverse().join(""))*-1
        return y<=-Math.pow(2,31)?0:y
    }
};

9. isPalindrome

var isPalindrome = function(x) {
    if(x>=0){
        let y = (x+"").split("").reverse().join("")
        return x == y?true:false
    }else{
        return false
    }
};

13. romanToInt

var romanToInt = function(s) {
    var num = 0
    var dic = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}
    for(let i=0;i<s.length-1;i++){
        if(dic[s[i]]>=dic[s[i+1]]){
            num += dic[s[i]]
        }else{
            num -= dic[s[i]]
        } 
    }
    num += dic[s[s.length-1]]
    return num
};

14. longestCommonPrefix

var longestCommonPrefix = function(strs) {
   var firstStrs = strs[0];
   var result ='';
   if(!strs.length){
       return result;
   }
   for (var i = 0; i < firstStrs.length; i++) {
       for (var j =  1; j < strs.length; j++) {
           if(firstStrs[i] != strs[j][i]){
               return result;
           }
        }
        result += firstStrs[i];
    }
    return result;
 };

20. longestCommonPrefix

var isValid = function(s) {
    while(s.indexOf("{}")!=-1 || s.indexOf("[]")!=-1 || s.indexOf("()")!=-1)
    s = s.replace("{}","").replace("[]",""). replace("()","")
    if(s === ""){
        return true
    }else{
        return false
    }
};

21. mergeTwoLists

不会

26. removeDuplicates

var removeDuplicates = function(nums) {
    var arr = []
    for(let i=0 ;i<nums.length;i++){
        if(arr.indexOf(nums[i]) === -1){
            arr.push(nums[i])
        }else{
            nums.splice(i,1)
            i--
        }
    }
    return nums.length
};

27. removeDuplicates

var removeElement = function(nums, val) {
    for(let i=0;i<nums.length;i++){
        if(nums[i]===val){
            nums.splice(i,1)
            i--
        }
    }
    return nums.length
};

28. strStr

var strStr = function(haystack, needle) {
    return haystack.indexOf(needle)
};

相关文章

网友评论

      本文标题:leetcode简单题自己的解法合集(一)

      本文链接:https://www.haomeiwen.com/subject/tnnjgqtx.html