可以想到用二分查找的条件:1、数组为有序数组;2、数组中无重复元素
题目:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
看到的第一想法就是直接利用数组对象方法indexOf():
后来看了代码随想录中的解释后,得出要分为两种情况:
左闭右闭:
左闭右开:
总结:写代码要沉得下心来。之前学数据结构的时候学过二分法,但当时并没有理解透彻,而且有一种抗拒心理,当自己真的想要去学成一样东西的时候才能学得进去。