算法

leetcode整数反转

let x = -123;
// number->string->array->string->number->judge
let reverse = function(x) {
    let res = [];
    let str = x.toString();
    //字符串也有length属性
    for(let i = str.length - 1; i > 0; i --){
        res.push(str[i]);
    }
    if(str[0] === '-'){
        res.unshift(str[0]);
    }else{
        res.push(str[0]);
    }
    //join()是把数组里的每个元素合并成字符串了
    let reverseNumber = parseInt(res.join(""));
    if(reverseNumber < Math.pow(-2,31) || reverseNumber > (Math.pow(2,31) - 1)){
        return 0;
    }else
        return reverseNumber;
};
console.log(reverse(x));

leetcode两数之和

let nums = [2,7,4,11],target = 9;
var twoSum = function(nums, target) {
 for(let i = 0; i < nums.length; i ++){
     for(let j = i+1; j < nums.length; j ++){
         if(nums[j] == target - nums[i])
             return [i,j];
     }
 } 
};
console.log(twoSum(nums,target));

回文数:

//先将'-121'变成['-','1','2','1']然后变成['1','2','1','-']然后变成'121-',最后比较'-121'和'121-'
function f(x) {
    let str = x.toString();
    let arr = str.split('').reverse();//split()可以把字符串变成数组
    let result = arr.join('');//join()可以把数组变成字符串
    if(str === result){
        return true;
    }else{
        return false;
    }
}
let x = -121;
f(x);

最长公共前缀

let str = ['flower','flow','flight'];
var longestCommonPrefix = function(strs) {
    if (strs.length === 0) {
        return '';
    }
    let a = strs[0];
    for(let i = 0; i < a.length; i++) {
        for(let j = 1; j < strs.length; j++) {
            if (a[i] !== strs[j][i]) {//比较独特的数组访问方式,要记住
                return a.substring(0, i);//不接受负数,提取子字符串,从0号位置开始提取,提取到i-1的位置
            }
        }
    }
    return a;
};
con
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值