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