Skip to content

Commit b38702a

Browse files
authored
Merge pull request #1852 from andynullwong/0977
Create 0977-squares-of-a-sorted-array.js & .ts
2 parents 4fac746 + eda7d6f commit b38702a

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/**
2+
* @param {number[]} nums
3+
* @return {number[]}
4+
*/
5+
var sortedSquares = function (nums) {
6+
let left = 0;
7+
let right = nums.length - 1;
8+
9+
const answer = [];
10+
11+
while (left <= right) {
12+
const leftSqr = Math.pow(nums[left], 2);
13+
const rightSqr = Math.pow(nums[right], 2);
14+
15+
if (leftSqr > rightSqr) {
16+
answer.push(leftSqr);
17+
left++;
18+
} else {
19+
answer.push(rightSqr);
20+
right--;
21+
}
22+
}
23+
return answer.reverse();
24+
};
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
function sortedSquares(nums: number[]): number[] {
2+
let left: number = 0;
3+
let right: number = nums.length - 1;
4+
5+
const answer: number[] = [];
6+
7+
while (left <= right) {
8+
const leftSqr = nums[left] * nums[left];
9+
const rightSqr = nums[right] * nums[right];
10+
11+
if (leftSqr > rightSqr) {
12+
answer.push(leftSqr);
13+
left++;
14+
} else {
15+
answer.push(rightSqr);
16+
right--;
17+
}
18+
}
19+
return answer.reverse();
20+
}

0 commit comments

Comments
 (0)