Squares of a Sorted Array

Problem Summary

(Write in your own words, not copied from LeetCode. This forces comprehension.)

Key Observations

(Patterns, constraints, or hints in the problem statement.)

Approach Taken

(Step-by-step logic or pseudocode before coding.)

Main Concepts Used

(Mark the CS concepts or algorithms used.)

Time & Space Complexity

Code

class Solution:
    def sortedSquares(self, nums: List[int]) -> List[int]:
        l, r = 0, len(nums) - 1
        result = []
        while l <= r:
            l_square = nums[l] ** 2
            r_square = nums[r] ** 2
            if l_square >= r_square:
                result.append(l_square)
                l += 1
            else:
                result.append(r_square)
                r -= 1
        result.reverse()
        return result

Common Mistakes / Things I Got Stuck On