LEETCODE 07 09

xiaoxiao2025-10-24  4

最近忙着面试耽误了几天,今天刷了07,09都是字符串处理,一个是大数反转,一个是回文数判断,我都是转成字符串处理的,过了是过了,但是挺慢的,先记着,等有机会优化下 题目 给定一个 32 位有符号整数,将整数中的数字进行反转。

/** * @param {number} x * @return {number} */ var reverse = function(x) { x=x.toString(); if(x[x.length-1]==0&&x.length==1){ return parseInt(x); }else if(x[x.length-1]==0){ x=x.substr(0,x.length-1); } if(x[0]=='-'){ x=x[0]+ x.substr(1,x.length-1).split('').reverse().join(''); } else{ x=x.split('').reverse().join(''); } x=parseInt( x); if(x>2147483647||x<-2147483648){ return 0; }else{ return x } };

心得:没考虑0,有个大数范围的判断,刚开始没考虑,我的可能比较蠢,以后再改吧 09 题目 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

var isPalindrome = function(x) { let isTrue=true; x=x.toString(); // let x1=x.split('').reverse(); for(let r=0;r<x.length/2;r++){ if(x[r]!==x[x.length-r-1]){ isTrue=false; break; } } return isTrue; }; 心得:这个就是特别慢,需要优化速度
转载请注明原文地址: https://www.6miu.com/read-5038432.html

最新回复(0)