0
点赞
收藏
分享

微信扫一扫

【Swift】LeedCode 差的绝对值为 K 的数对数目

金刚豆 2022-01-26 阅读 56

【Swift】LeedCode 差的绝对值为 K 的数对数目
由于各大平台的算法题的解法很少有Swift的版本,小编这边将会出个专辑为手撕LeetCode算法题。新手撕算法。请包涵!!!

给你一个整数数组 nums 和一个整数 k ,请你返回数对 (i, j) 的数目,满足 i < j 且 |nums[i] - nums[j]| == k 。

|x| 的值定义为:

如果 x >= 0 ,那么值为 x 。
如果 x < 0 ,那么值为 -x 。
 

示例 1:

输入:nums = [1,2,2,1], k = 1
输出:4
解释:差的绝对值为 1 的数对为:
- [1,2,2,1]
- [1,2,2,1]
- [1,2,2,1]
- [1,2,2,1]
示例 2:

输入:nums = [1,3], k = 3
输出:0
解释:没有任何数对差的绝对值为 3 。
示例 3:

输入:nums = [3,2,1,5,4], k = 2
输出:3
解释:差的绝对值为 2 的数对为:
- [3,2,1,5,4]
- [3,2,1,5,4]
- [3,2,1,5,4]
 

提示:

1 <= nums.length <= 200
1 <= nums[i] <= 100
1 <= k <= 99


Swift解法如下

class Solution {
    func countKDifference(_ nums: [Int], _ k: Int) -> Int {
        var sum = 0
        for i in 0..<nums.count{
            for j in i..<nums.count{
                if abs(nums[i] - nums[j]) == k{
                    sum = sum + 1
                }
            }
        }
        return sum
    }
}
举报

相关推荐

0 条评论