1323 题目及测试用例
我的思路:要翻转一位数字,是该数变为最大的数字,肯定是要把小的数翻转为大的数字,即6翻转为9;要使数字最大,只要把最高位的数字变大就可;综上,我的解题策略如下:
①将整数分割成为数组,整数的每一位是数组的一个元素;
②从左往右(最高位到最低位)找第一个“6”,将该值变为“9”;
③将数组变为字符串,强制类型转换为整数,返回该整数;
提交结果:
我的代码:
var maximum69Number = function(num) {
var s = String(num).split('');//将整数变为数组形式
var i = s.indexOf('6')//查找第一个“6”的位置
if(i > -1) {//i!=-1时说明可以找到6
arr[i] = 9//更改该位置的值为9
return Number(s.join(''))//将数组变为字符串,强制类型转换
}
return num;//当没有数字6时直接返回该数字
每日一刷,博客记录,欢迎来一起交流!