二分查找法学习

1、题目

已有一个10个元素的整形数组a,且按值从小到大有序。输入一个整数x,然后在数组中查找x,如果找到,输出相应的下标,否则,输出"Not Found"。
二分查找法前提:在一个严格递增的序列中找出给定的数字X。

2、思路

初始化指针在数组的开头和结尾,然后得到中间数,进行比较,移动头尾指针,进行一半的取舍。当找到的mid>low,则最小数一定在mid的右侧,当mid<high,最小数一定在mid的左侧(或者是mid)。

3、学习二分法中主要遇到的不足/难点:

(1)对题目分析有困难,不知道入手点在哪儿。
(2)没注意到是有序还是无序,忘记排序。
(3)数组溢出,导致编译出错。
(4)二分做起来感到还是很困难,要多加分析才能得出答案。

4、流程图

5、部分代码

posted @ 2019-12-16 23:48  阿然DR  阅读(467)  评论(0编辑  收藏  举报