zoukankan      html  css  js  c++  java
  • 查找算法

    1.顺序查找 (线性查找)

    2.二分查找(折半查找)

    时间复杂度:O(logn)

     1 public class Solution {    
     2     
     3     public static int binarySearch(int[] num,int key) {
     4         int low=0;
     5         int high=num.length-1;
     6         int mid;
     7         
     8         while(low<=high) {
     9             mid=(low+high)/2;
    10             if(key==num[mid])
    11                 return mid;
    12             else if(key>num[mid])
    13                 low=mid+1;
    14             else
    15                 high=mid-1;
    16         }        
    17         return -1;
    18     }
    19     
    20     public static void main(String[] args) {
    21         int[] table = {2,4,5,6,7,8,9,10};
    22         System.out.println(binarySearch(table, 10));
    23     }
    24 }

    3.

    动态表查找

    二叉排序树:二叉排序树(Binary Sort Tree)又称二叉查找(搜索)树(Binary Search Tree)。

      BST树

    定义:二叉排序树或者是空树,或者是具有下列性质的一颗树:

    • 若他的左子树不为空,则左子树上所有结点的值均小于其根节点的值

    • 若他的右子树不为空,则右子树上所有结点的值均大于其根节点的值

    • 他的左右子树也均是二叉排序树

    BST博客讲解:

    http://blog.csdn.net/evankaka/article/details/48088241

  • 相关阅读:
    spring mvc poi excel
    select onchange事件的使用
    eclipse下svn的分支与合并指南
    jquery_final
    ListView
    资源的使用
    Notification
    单选
    复选框
    调试
  • 原文地址:https://www.cnblogs.com/midiyu/p/8503041.html
Copyright © 2011-2022 走看看