mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 03:34:02 +08:00
Merge pull request #1408 from xiaofei-2020/extra05
添加(0189.旋转数组.md):增加typescript版本
This commit is contained in:
@ -7,6 +7,8 @@
|
|||||||
|
|
||||||
# 189. 旋转数组
|
# 189. 旋转数组
|
||||||
|
|
||||||
|
[力扣题目链接](https://leetcode.cn/problems/rotate-array/)
|
||||||
|
|
||||||
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
|
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
|
||||||
|
|
||||||
进阶:
|
进阶:
|
||||||
@ -160,6 +162,27 @@ var rotate = function (nums, k) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## TypeScript
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
function rotate(nums: number[], k: number): void {
|
||||||
|
const length: number = nums.length;
|
||||||
|
k %= length;
|
||||||
|
reverseByRange(nums, 0, length - 1);
|
||||||
|
reverseByRange(nums, 0, k - 1);
|
||||||
|
reverseByRange(nums, k, length - 1);
|
||||||
|
};
|
||||||
|
function reverseByRange(nums: number[], left: number, right: number): void {
|
||||||
|
while (left < right) {
|
||||||
|
const temp = nums[left];
|
||||||
|
nums[left] = nums[right];
|
||||||
|
nums[right] = temp;
|
||||||
|
left++;
|
||||||
|
right--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
Reference in New Issue
Block a user