Skip to content

Commit 55e3828

Browse files
Merge pull request youngyangyang04#2547 from songtang0/master
docs: 【0055右旋字符串】JavaScript部分实现
2 parents 8fe3534 + a47fcbb commit 55e3828

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

problems/kamacoder/0055.右旋字符串.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,37 @@ int main()
295295
```
296296
297297
### JavaScript:
298+
```javascript
299+
// JS中字符串内不可单独修改
300+
301+
// 右旋转
302+
function reverseLeftWords(s, k) {
303+
const reverse = (sList, start, end) => {
304+
for (let i = start, j = end; i < j; i++, j--) {
305+
[sList[i], sList[j]] = [sList[j], sList[i]];
306+
}
307+
}
308+
const sList = Array.from(s);
309+
reverse(sList, 0, sList.length - k - 1);
310+
reverse(sList, sList.length - k, sList.length - 1);
311+
reverse(sList, 0, sList.length - 1);
312+
return sList.join('');
313+
}
298314
315+
// 左旋转
316+
var reverseLeftWords = function(s, n) {
317+
const reverse = (sList, start, end) => {
318+
for (let i = start, j = end; i < j; i++, j--) {
319+
[sList[i], sList[j]] = [sList[j], sList[i]];
320+
}
321+
}
322+
const sList = s.split('');
323+
reverse(sList, 0, n - 1);
324+
reverse(sList, n, sList.length - 1);
325+
reverse(sList, 0, sList.length - 1);
326+
return sList.join('');
327+
};
328+
```
299329

300330
### TypeScript:
301331

0 commit comments

Comments
 (0)