LeetCode之算法面试之查找表4之字母异位词分组(49)、直线上最多的点数(149)、四数相加II(454)、回旋镖的数量(447)
1、字母异位词分组(49)
题目描述:
【中等题】
给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。
思路分析:
未完待续
2、直线上最多的点数(149)
题目描述:
【困难题】
给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上。
3、四数相加II(454)
题目描述:
【中等题】
给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。
为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 − 2 28 -2^{28} −228 到 2 28 2^{28} 228 - 1 之间,最终结果不会超过 2 31 − 1 2^{31} - 1 231−1 。
思路分析:
4、回旋镖的数量(447)
题目描述:
【中等题】
给定平面上 n 对不同的点,“回旋镖” 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序)。
找到所有回旋镖的数量。你可以假设 n 最大为 500,所有点的坐标在闭区间 [-10000, 10000] 中。
思路分析: