@@ -300,33 +300,50 @@ int main()
300300```javascript
301301// JS中字符串内不可单独修改
302302
303- // 右旋转
304- function reverseLeftWords(s, k) {
305- const reverse = (sList, start, end) => {
306- for (let i = start, j = end; i < j; i++, j--) {
307- [sList[i], sList[j]] = [sList[j], sList[i]];
308- }
309- }
310- const sList = Array.from(s);
311- reverse(sList, 0, sList.length - k - 1);
312- reverse(sList, sList.length - k, sList.length - 1);
313- reverse(sList, 0, sList.length - 1);
314- return sList.join('');
303+ const readline = require('readline')
304+
305+ const rl = readline.createInterface({
306+ input: process.stdin,
307+ output: process.stdout
308+ })
309+
310+ const inputs = []; // 存储输入
311+
312+ rl.on('line', function(data) {
313+ inputs.push(data);
314+
315+ }).on('close', function() {
316+ const res = deal(inputs);
317+ // 打印结果
318+ console.log(res);
319+ })
320+
321+ // 对传入的数据进行处理
322+ function deal(inputs) {
323+ let [k, s] = inputs;
324+ const len = s.length - 1;
325+ k = parseInt(k);
326+ str = s.split('');
327+
328+ str = reverseStr(str, 0, len - k)
329+ str = reverseStr(str, len - k + 1, len)
330+ str = reverseStr(str, 0, len)
331+
332+ return str.join('');
315333}
316334
317- // 左旋转
318- var reverseLeftWords = function(s, n) {
319- const reverse = (sList, start, end) => {
320- for (let i = start, j = end; i < j; i++, j--) {
321- [sList[i], sList[j]] = [sList[j], sList[i]];
335+ // 根据提供的范围进行翻转
336+ function reverseStr(s, start, end) {
337+
338+ while (start < end) {
339+ [s[start], s[end]] = [s[end], s[start]]
340+
341+ start++;
342+ end--;
322343 }
323- }
324- const sList = s.split('');
325- reverse(sList, 0, n - 1);
326- reverse(sList, n, sList.length - 1);
327- reverse(sList, 0, sList.length - 1);
328- return sList.join('');
329- };
344+
345+ return s;
346+ }
330347```
331348
332349### TypeScript:
0 commit comments