notes/OJ notes/pages/Leetcode Rotate-Array.md

64 lines
1.2 KiB
Markdown
Raw Normal View History

2022-07-10 09:04:10 +08:00
# Leetcode Rotate-Array
#### 2022-07-10 08:54
> ##### Algorithms:
> #algorithm #array_in_place_operation
> ##### Data structures:
> #DS #array
> ##### Difficulty:
> #coding_problem #difficulty-medium
> ##### Additional tags:
> #leetcode
> ##### Revisions:
> N/A
##### Related topics:
```expander
tag:#array_in_place_operation
```
##### Links:
- [Link to problem](https://leetcode.com/problems/rotate-array/)
___
### Problem
Given an array, rotate the array to the right by `k` steps, where `k` is non-negative.
#### Examples
**Example 1:**
**Input:** nums = [1,2,3,4,5,6,7], k = 3
**Output:** [5,6,7,1,2,3,4]
**Explanation:**
rotate 1 steps to the right: [7,1,2,3,4,5,6]
rotate 2 steps to the right: [6,7,1,2,3,4,5]
rotate 3 steps to the right: [5,6,7,1,2,3,4]
**Example 2:**
**Input:** nums = [-1,-100,3,99], k = 2
**Output:** [3,99,-1,-100]
**Explanation:**
rotate 1 steps to the right: [99,-1,-100,3]
rotate 2 steps to the right: [3,99,-1,-100]
#### Constraints
- `1 <= nums.length <= 105`
- `-231 <= nums[i] <= 231 - 1`
- `0 <= k <= 105`
### Thoughts
#### Method 1: Array In-place operation
#### Method 2: Copy
#### Method 3: CPP's STL
### Solution