算法刷题笔记——day02(LeetCode入门题)


前言

基础知识基本学习完了,现在开始专攻算法题,每天都从牛客、力扣、领扣都刷几道算法题,当然啦是从入门的开始咯!

一、力扣第九题:回文数

题目要求:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
其实这道题在做的时候,还是挺有思路的,先将字符串转为数组,切割后在进行拼接

代码如下:

 let isPalindrome = function (x) {
    
    
      let str = x;
			//先将整数x转为字符串,根据空格字符进行切割,反转数组后进行字符串的拼接
      let newStr = x.toString().split("").reverse().join('');
			// 进行判断,如果反转后的整数与之前的相同则返回true
      if (newStr == str) {
    
    
        return true;
      } else {
    
    
        return false;
      }
     // return newStr == str ? true : false//三元运算符
    };

二、第七题整数回转

这两道题思路都差不多,只不过这道题需要转化为数值型

let reverse = function(x) {
    
    
				let arr = []; //一个数组
				let nums = x.toString(); //将x转换为一个字符串
				arr = parseInt(nums.split("").reverse().join(""));//将反转后的数组转化为数值型
				// 如果x是负数的话,对数组进行取反
				if(x < 0 ){
    
    
					arr = -arr;
				}
				//如果反转后的数组超过有符号位的32位则返回0
				return arr > 2147483647 || arr < -2147483648 ? 0 : arr;
			};

总结

继续加油!

猜你喜欢

转载自blog.csdn.net/weixin_45331887/article/details/118293261
今日推荐