mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 16:54:50 +08:00
Merge pull request #1037 from xiaofei-2020/str5
添加(剑指Offer58-II.左旋转字符串.md):增加TypeScript和JavaScript版本
This commit is contained in:
@ -209,6 +209,61 @@ var reverseLeftWords = function(s, n) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
版本二(在原字符串上操作):
|
||||||
|
|
||||||
|
```js
|
||||||
|
/**
|
||||||
|
* @param {string} s
|
||||||
|
* @param {number} n
|
||||||
|
* @return {string}
|
||||||
|
*/
|
||||||
|
var reverseLeftWords = function (s, n) {
|
||||||
|
/** Utils */
|
||||||
|
function reverseWords(strArr, start, end) {
|
||||||
|
let temp;
|
||||||
|
while (start < end) {
|
||||||
|
temp = strArr[start];
|
||||||
|
strArr[start] = strArr[end];
|
||||||
|
strArr[end] = temp;
|
||||||
|
start++;
|
||||||
|
end--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/** Main code */
|
||||||
|
let strArr = s.split('');
|
||||||
|
let length = strArr.length;
|
||||||
|
reverseWords(strArr, 0, length - 1);
|
||||||
|
reverseWords(strArr, 0, length - n - 1);
|
||||||
|
reverseWords(strArr, length - n, length - 1);
|
||||||
|
return strArr.join('');
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
TypeScript:
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
function reverseLeftWords(s: string, n: number): string {
|
||||||
|
/** Utils */
|
||||||
|
function reverseWords(strArr: string[], start: number, end: number): void {
|
||||||
|
let temp: string;
|
||||||
|
while (start < end) {
|
||||||
|
temp = strArr[start];
|
||||||
|
strArr[start] = strArr[end];
|
||||||
|
strArr[end] = temp;
|
||||||
|
start++;
|
||||||
|
end--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/** Main code */
|
||||||
|
let strArr: string[] = s.split('');
|
||||||
|
let length: number = strArr.length;
|
||||||
|
reverseWords(strArr, 0, length - 1);
|
||||||
|
reverseWords(strArr, 0, length - n - 1);
|
||||||
|
reverseWords(strArr, length - n, length - 1);
|
||||||
|
return strArr.join('');
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
Swift:
|
Swift:
|
||||||
|
|
||||||
```swift
|
```swift
|
||||||
|
Reference in New Issue
Block a user