less than 1 minute read

977. Squares of a Sorted Array

Difficulty: Easy

Related Topics: Array, Two Pointers, Sorting

Given an integer array nums sorted in non-decreasing order, return an array of the squares of each number sorted in non-decreasing order.

Example 1:

Input: nums = [-4,-1,0,3,10] Output: [0,1,9,16,100] Explanation: After squaring, the array becomes [16,1,0,9,100]. After sorting, it becomes [0,1,9,16,100].

Example 2:

Input: nums = [-7,-3,2,3,11] Output: [4,9,9,49,121]

Code:

class Solution:
    def sortedSquares(self, nums: List[int]) -> List[int]:
        sqredArray = []
        for i in nums:
            sqredArray.append(i*i)
        sqredArray.sort()
        return sqredArray

FeedBacks:

I just simply made a new array to store values of i*i from for loop, sorted that array and returned it. However, it doesn’t seems like it is using two pointer algorithm that questions really asking for.