首页 > 编程知识 正文

二分查找法的时间复杂度是,顺序查找时间复杂度是

时间:2023-05-06 16:08:57 阅读:237442 作者:2120

注意要点:通过System.currentTimeMills();来获取当前时间,来计算该算法运行运算时间​​​​​​​顺序查找的时间复杂度为O(n)二分查找的时间复杂度为O(log(n))但两者的运行时间的结果却千差万别,可知当计算量很大的情况下算法优化的必要性。import java.util.Arrays;public class Main {public static int a[] = new int[10000*10000];public static void main(String[] args) {for(int i = 0; i < 10000* 10000; i ++) {a[i] = i + 1;}int target = 10000 * 10000;//计算顺序查找所用时间long start = System.currentTimeMillis();find(target);long end = System.currentTimeMillis();System.out.println(end - start + "ms");//计算二分查找所用时间 start = System.currentTimeMillis();Arrays.binarySearch(a, target);end = System.currentTimeMillis();System.out.println(end - start + "ms");}private static void find(int target) {for(int i = 0; i < 10000 * 10000; i ++) {if(a[i] == target) {return;}}}}

运行结果:

55ms0ms

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。