Concatenation of Array

Solution

class Solution:
    def getConcatenation(self, nums: List[int]) -> List[int]:
        length = len(nums)
        result = [0] * (2 * length)
        for i, n in enumerate(nums):
            result[i] = result[i + length] = n
        return result

Idea

Pre-allocate 2 * len(nums) slots and write each value at i and i + length in one pass. nums + nums or nums * 2 does the same in one line.

Complexity

Time O(N), space O(N).


Related: LeetCode, Arrays and Hashing, Contains Duplicate, Score of a String