zoukankan      html  css  js  c++  java
  • JS数据结构与算法

    时间复杂度

    顺序查找(O(n)

    字面意思,代码略

    ⭐二分查找(O(logn)

    这个算法要求被搜索的数据结构已排序。以下是该算法遵循的步骤。

    (1) 选择数组的中间值。

    (2) 如果选中值是待搜索值,那么算法执行完毕(值找到了)。

    (3) 如果待搜索值比选中值要小,则返回步骤1并在选中值左边的子数组中寻找。

    (4) 如果待搜索值比选中值要大,则返回步骤1并在选种值右边的子数组中寻找。

    function Search() {
        this.binarySearch = function (item) {
            //this.quickSort();  //排序代码
            var low = 0,
                high = array.length - 1,
                mid, element;
            while (low <= high) {
                mid = Math.floor((low + high) / 2);
                element = array[mid];
                if (element < item) {
                    low = mid + 1;
                } else if (element > item) {
                    high = mid - 1;
                } else {
                    return mid;
                }
            }
            return -1;
        };
    }
    
  • 相关阅读:
    开启Spring Boot 之旅
    Java笔试面试练习题---集合
    Python
    Python
    Redis -下载与基本使用
    Git
    Vue全家桶-Vue-router&Vuex
    Es6
    Vue-前端
    Django基础及实战
  • 原文地址:https://www.cnblogs.com/L-xmin/p/12699555.html
Copyright © 2011-2022 走看看