1.快乐数--对应 LeetCode202
解答:
测试:
2.两数之和--对应LeedCode1
解答:
3.四数相加--对应LeedCode454
思路
我们可以将四个数组分成两部分,n1 和 n2 为一组,n3 和 n4 为另外一组。
对于 n1 和 n2,我们使用二重循环对它们进行遍历,得到所有 n1+n2 的值并存入哈希映射中。对于哈希映射中的每个键值对,每个键表示一种 n1+n2,对应的值为 n1+n2 出现的次数。
对于 n3 和 n4,我们同样使用二重循环对它们进行遍历。当遍历到 n3+n4时,如果 −(n3+n4) 出现在哈希映射中,那么将 −(n3+n4) 对应的值累加进答案中。
最终即可得到满足 n1+n2+n3+n4=0 的四元组数目。
代码:
测试结果:
使用哈希表的心得:
哈希表常用于统计元素的出现频率,如果需要频繁查找数据(如在数组中查找某个元素),使用哈希表可以避免线性扫描,显著提高查找效率。