@@ -42,13 +42,106 @@ After sorting, it becomes [0,1,9,16,100].
42
42
### ** Python3**
43
43
44
44
``` python
45
-
45
+ class Solution :
46
+ def sortedSquares (self , nums : List[int ]) -> List[int ]:
47
+ n = len (nums)
48
+ res = [0 ] * n
49
+ i, j, k = 0 , n - 1 , n - 1
50
+ while i <= j:
51
+ if nums[i] * nums[i] > nums[j] * nums[j]:
52
+ res[k] = nums[i] * nums[i]
53
+ i += 1
54
+ else :
55
+ res[k] = nums[j] * nums[j]
56
+ j -= 1
57
+ k -= 1
58
+ return res
46
59
```
47
60
48
61
### ** Java**
49
62
50
63
``` java
64
+ class Solution {
65
+ public int [] sortedSquares (int [] nums ) {
66
+ int n = nums. length;
67
+ int [] res = new int [n];
68
+ for (int i = 0 , j = n - 1 , k = n - 1 ; i <= j;) {
69
+ if (nums[i] * nums[i] > nums[j] * nums[j]) {
70
+ res[k-- ] = nums[i] * nums[i];
71
+ ++ i;
72
+ } else {
73
+ res[k-- ] = nums[j] * nums[j];
74
+ -- j;
75
+ }
76
+ }
77
+ return res;
78
+ }
79
+ }
80
+ ```
81
+
82
+ ### ** C++**
83
+
84
+ ``` cpp
85
+ class Solution {
86
+ public:
87
+ vector<int > sortedSquares(vector<int >& nums) {
88
+ int n = nums.size();
89
+ vector<int > res(n);
90
+ for (int i = 0, j = n - 1, k = n - 1; i <= j;) {
91
+ if (nums[ i] * nums[ i] > nums[ j] * nums[ j] ) {
92
+ res[ k--] = nums[ i] * nums[ i] ;
93
+ ++i;
94
+ } else {
95
+ res[ k--] = nums[ j] * nums[ j] ;
96
+ --j;
97
+ }
98
+ }
99
+ return res;
100
+ }
101
+ };
102
+ ```
103
+
104
+ ### **Go**
105
+
106
+ ```go
107
+ func sortedSquares(nums []int) []int {
108
+ n := len(nums)
109
+ res := make([]int, n)
110
+ for i, j, k := 0, n-1, n-1; i <= j; {
111
+ if nums[i]*nums[i] > nums[j]*nums[j] {
112
+ res[k] = nums[i] * nums[i]
113
+ i++
114
+ } else {
115
+ res[k] = nums[j] * nums[j]
116
+ j--
117
+ }
118
+ k--
119
+ }
120
+ return res
121
+ }
122
+ ```
51
123
124
+ ### ** JavaScript**
125
+
126
+ ``` js
127
+ /**
128
+ * @param {number[]} nums
129
+ * @return {number[]}
130
+ */
131
+ var sortedSquares = function (nums ) {
132
+ const n = nums .length ;
133
+ const res = new Array (n);
134
+ for (let i = 0 , j = n - 1 , k = n - 1 ; i <= j;) {
135
+ if (nums[i] * nums[i] > nums[j] * nums[j]) {
136
+ res[k-- ] = nums[i] * nums[i];
137
+ ++ i;
138
+ } else {
139
+ res[k-- ] = nums[j] * nums[j];
140
+ -- j;
141
+ }
142
+ }
143
+ return res;
144
+ };
52
145
```
53
146
54
147
### ** ...**
0 commit comments