若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。
If you like this post, please click the ads on the blog or buy me a coffee. Thank you very much.
題目原文描述 https://leetcode.com/problems/squares-of-a-sorted-array/
中文描述
給定一個由小排到大的整數陣列 nums ,算出每個數字的平方,並由小排到大排序。限制條件:
- 1 <= nums.length <= 10000
- -10000 <= nums[i] <= 10000
範例一:
輸入 nums = [-4, -1, 0, 2, 3]
輸出 [0, 1, 4, 9, 16]
平方後 [16, 1, 0, 4, 9],排序後 [0, 1, 4, 9, 16]
解法一:
算出每個數字平方後,再做排序。
Python Code
解法二:
用兩個指標 left 與 right 分別指到陣列的開頭索引 0 與結束索引 len(nums) - 1。
maxIdx 為目前找到的最大值之索引位置。可參考底下動畫圖片
Python Code
沒有留言:
張貼留言