Merge branch 'master' into master
This commit is contained in:
@@ -23,6 +23,8 @@
|
||||
|
||||
# 思路
|
||||
|
||||
为了易于大家理解,我还特意录制了视频,[本题视频讲解](https://www.bilibili.com/video/BV1QB4y1D7ep)
|
||||
|
||||
## 暴力排序
|
||||
|
||||
最直观的想法,莫过于:每个数平方之后,排个序,美滋滋,代码如下:
|
||||
@@ -358,6 +360,30 @@ class Solution {
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Kotlin:
|
||||
```kotlin
|
||||
class Solution {
|
||||
// 双指针法
|
||||
fun sortedSquares(nums: IntArray): IntArray {
|
||||
var res = IntArray(nums.size)
|
||||
var left = 0 // 指向数组的最左端
|
||||
var right = nums.size - 1 // 指向数组端最右端
|
||||
// 选择平方数更大的那一个往 res 数组中倒序填充
|
||||
for (index in nums.size - 1 downTo 0) {
|
||||
if (nums[left] * nums[left] > nums[right] * nums[right]) {
|
||||
res[index] = nums[left] * nums[left]
|
||||
left++
|
||||
} else {
|
||||
res[index] = nums[right] * nums[right]
|
||||
right--
|
||||
}
|
||||
}
|
||||
return res
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Scala:
|
||||
|
||||
双指针:
|
||||
|
||||
Reference in New Issue
Block a user