K-diff Pairs in an Array leetcode 532
来源:互联网 发布:ubuntu查看cpu使用情况 编辑:程序博客网 时间:2024/06/02 03:06
题目大意:给定一个数组,从中取出差值绝对值为k的pair,pair不能重复。
题目分析:如果调用combination之类的函数,会造成实际上的算法复杂度为O(n^2),最后导致了TLE。因此改为直接统计数字在数组中出现的次数,然后根据 k 的值来进行不同的判断统计。
AC code(Ruby):
def find_pairs(nums, k) if k < 0 || nums.length < 2 return 0 end count = 0 h = Hash.new nums.each {|n| h[n] = (h.include? n) ? h[n] + 1 : 1 } if k == 0 h.each_value {|v| count += 1 if v > 1 } elsif k > 0 h.each_key {|key| count += 1 if h.include? key + k } end countend
0 0
- LeetCode K-diff Pairs in an Array
- LeetCode : K-diff Pairs in an Array
- leetCode-K-diff Pairs in an Array
- K-diff Pairs in an Array leetcode 532
- Leetcode 532 K-diff Pairs in an Array
- [leetcode]-532 K-diff Pairs in an Array
- 20170605-leetcode-532-K-diff Pairs in an Array
- LeetCode #532 K-diff Pairs in an Array
- Leetcode 532 K-diff Pairs in an Array
- LeetCode.532 K-diff Pairs in an Array
- 532 K-diff Pairs in an Array
- LeetCode刷题【Array】 K-diff Pairs in an Array
- 【Leetcode】532. K-diff Pairs in an Array
- 532. K-diff Pairs in an Array ------Leetcode
- 【leetcode】532. K-diff Pairs in an Array
- [Leetcode]532. K-diff Pairs in an Array
- [LeetCode]532. K-diff Pairs in an Array
- LeetCode 532. K-diff Pairs in an Array
- MFC中子窗口调用父窗口资源的方法
- 冒泡排序和选择排序
- 在win10上安装shadowsocks服务器
- angular-cli的安装及各种坑
- nodejs安装express并搭建一个web应用
- K-diff Pairs in an Array leetcode 532
- javascript解决跨域的六种方法
- GraphicsLab Project之Normal Mapping
- Linux基础——mke2fs磁盘格式化
- Linux基础——mount磁盘挂载
- Eclipse new Server时Server name无法修改
- ”迷茫“中的软件学生该如何选择方向
- Linux基础——fstab分区表
- 全面分析 Spring 的编程式事务管理及声明式事务管理