Welcome to Subscribe On Youtube
Formatted question description: https://leetcode.ca/all/1929.html
1929. Concatenation of Array
Level
Easy
Description
Given an integer array nums
of length n
, you want to create an array ans
of length 2n
where ans[i] == nums[i]
and ans[i + n] == nums[i]
for 0 <= i < n
(0-indexed).
Specifically, ans
is the concatenation of two nums
arrays.
Return the array ans
.
Example 1:
Input: nums = [1,2,1]
Output: [1,2,1,1,2,1]
Explanation: The array ans is formed as follows:
- ans = [nums[0],nums[1],nums[2],nums[0],nums[1],nums[2]]
- ans = [1,2,1,1,2,1]
Example 2:
Input: nums = [1,3,2,1]
Output: [1,3,2,1,1,3,2,1]
Explanation: The array ans is formed as follows:
- ans = [nums[0],nums[1],nums[2],nums[3],nums[0],nums[1],nums[2],nums[3]]
- ans = [1,3,2,1,1,3,2,1]
Constraints:
n == nums.length
1 <= n <= 1000
1 <= nums[i] <= 1000
Solution
Get the length of nums
as n
. Create an array ans
of length n * 2
. Then for each i
from 0 to n - 1
, let ans[i] = ans[i + n] = nums[i]
. Finally, return ans
.
-
class Solution { public int[] getConcatenation(int[] nums) { int n = nums.length; int[] concat = new int[n * 2]; for (int i = 0; i < n; i++) { concat[i] = nums[i]; concat[i + n] = nums[i]; } return concat; } } ############ class Solution { public int[] getConcatenation(int[] nums) { int n = nums.length; int[] ans = new int[n << 1]; for (int i = 0; i < n << 1; ++i) { ans[i] = nums[i % n]; } return ans; } }
-
// OJ: https://leetcode.com/problems/concatenation-of-array/ // Time: O(N) // Space: O(1) class Solution { public: vector<int> getConcatenation(vector<int>& A) { vector<int> ans(A); int N = A.size(); for (int i = 0; i < N; ++i) ans.push_back(A[i]); return ans; } };
-
class Solution: def getConcatenation(self, nums: List[int]) -> List[int]: return nums + nums ############ # 1929. Concatenation of Array # https://leetcode.com/problems/concatenation-of-array/ class Solution: def getConcatenation(self, nums: List[int]) -> List[int]: return nums + nums
-
func getConcatenation(nums []int) []int { return append(nums, nums...) }
-
function getConcatenation(nums: number[]): number[] { return [...nums, ...nums]; }
-
/** * @param {number[]} nums * @return {number[]} */ var getConcatenation = function (nums) { let ans = nums.slice(); ans.splice(nums.length, 0, ...nums); return ans; };
-
impl Solution { pub fn get_concatenation(nums: Vec<i32>) -> Vec<i32> { nums.repeat(2) } }