A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 875244609 初级黑马   /  2015-11-28 00:28  /  627 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

相比于笨拙的遍历数组,二分法是对数组中元素查找效率很高的一种方法,但前提是数组本身是有序的,且只能返回一个索引,这样的话,二分法虽然高效却不能对含重复元素的数组的元素索引进行全部获取,也就是说,某个元素在数组中出现2次或两次以上,二分法查找此元素索引只能随机获取其中的一个,这样的话,很不爽~。
下面给出的改进的二分法可以返回该重复元素的所有索引,并且和遍历数组方法进行了性能上的比较,数据量比较小时遍历数组用时较少,因为一方面,改进的二分法逻辑判断较多,另一方面,数据太少二分法体现不出高效;而数据量较大时,改进的二分法速度上明显优于数组遍历!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马