算法通关之路:数学之美
目录
最接近的三数之和
|
|
答案
本题和 三数之和 的思路一样,先将数组nums排序,然后固定一个数,后面两个数变化。
先计算前三个数之和 sum 与 target 的差值 diff。
如果 sum==target,直接返回 target。
如果和与 target 的差值 diff 小于之前的 diff,则更新 diff 的值。
如果 sum 小于 target,则将左边的指针往右移,如果 sum 大于 target,则将右边的指针往左移。
|
|
最大数
|
|
答案
先将数组进行排序,排序规则为最高位值的大小。如果高位相同,则比较次高位,依次递推,但是这样不好确定每一个数字的位数。
我们需要改一下排序规则:相邻的两个数a、b进行组合,如果a(字符串)组合上 b 的值大于 b 组合上 a 的值,那么 a 就应该排在 b 前面。
本思想参考:算法通关之路。
|
|
收录于 合集・算法通关之路 1