[关闭]
@w1024020103 2017-08-21T18:27:38.000000Z 字数 518 阅读 641

K Closest Numbers In Sorted Array

LintCode LeetCode BinarySearch Comparator TwoPointers


submit 1:
Screen Shot 2017-08-20 at 10.31.56 PM.png-323.7kB
AC:
Screen Shot 2017-08-20 at 10.29.42 PM.png-399.9kB
Screen Shot 2017-08-20 at 10.29.47 PM.png-179.9kB

用的很straightforward的方法,思路直观,多写两个class: ResultType, comparator。记住这里的Arrays.sort(a,comparator)里comparator的写法。时间复杂度是O(nlogn).还没有达到Challenge里面O(logn + k).

这个方法的思路是先用二分法找到closest number to target(第一个大于等于target的数的index), 然后用Two Pointers的方法左右移动,找离target更近的数。

Screen Shot 2017-08-21 at 5.50.39 AM.png-54.1kB
Screen Shot 2017-08-21 at 5.29.46 AM.png-95.9kB

LeetCode版本用的是List, 用的straightforward的方法进行List 和int[]间的转换,要注意int[]里装的是int基本数据类型,但List装的是Object Integer. 总之一句话,遇到List of Integer, int[]之间的转换,用笨办法,不要toList,toArray的。

submit 1:
Screen Shot 2017-08-21 at 5.50.39 AM.png-54.1kB
Screen Shot 2017-08-21 at 5.50.43 AM.png-116.4kB

submit 2:
Screen Shot 2017-08-21 at 5.50.43 AM.png-116.4kB
Screen Shot 2017-08-21 at 6.02.08 AM.png-331.2kB

submit 3:
Screen Shot 2017-08-21 at 6.17.17 AM.png-52.6kB
Screen Shot 2017-08-21 at 6.17.20 AM.png-53.8kB

submit 4:
Screen Shot 2017-08-21 at 6.19.22 AM.png-78.7kB
Screen Shot 2017-08-21 at 6.19.26 AM.png-151.8kB

AC:
Screen Shot 2017-08-21 at 6.19.40 AM.png-104kB
Screen Shot 2017-08-21 at 6.19.43 AM.png-160.4kB

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注