151.翻转字符串里的单词
我用了两种实现方式(用库函数和不用库函数):
function reverseWords(s: string): string {
let wordsArr = s.split(" ").filter(word => word.length > 0);
return wordsArr.reverse().join(" ");
};
function reverseWords(s: string): string {
let sArr = [...s];
let word = "";
let wordsArr = [];
for (let letter of sArr) {
if (letter === ' ') {
word.length > 0 && wordsArr.push(word);
word = "";
} else {
word += letter;
}
}
word.length > 0 && wordsArr.push(word);
let left = 0;
let right = wordsArr.length - 1;
while (left < right) {
[wordsArr[right], wordsArr[left]] = [wordsArr[left], wordsArr[right]];
left++;
right--;
}
return wordsArr.join(" ")
};
卡码网:55.右旋转字符串
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
})
function main() {
rl.on("line", (k) => {
rl.on("line", (s) => {
let left = 0;
let right = 0;
let leftStr = "";
let rightStr = "";
while(k > 0){
right++;
k--;
}
while(right < s.length){
leftStr += s[left];
right++;
left++;
}
while(left < s.length){
rightStr += s[left];
left++;
}
console.log(rightStr + leftStr);
})
})
}
main();