最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java使用分治算法實現(xiàn)排序數(shù)索引功能示例【二分搜索】

 更新時間:2017年09月16日 11:11:10   作者:軟貨  
這篇文章主要介紹了Java使用分治算法實現(xiàn)排序數(shù)索引功能,結(jié)合具體實例形式分析了java分治算法進行排序索引的相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Java使用分治算法實現(xiàn)排序數(shù)索引功能。分享給大家供大家參考,具體如下:

/**
 * Find the first q and return the index
 * First method is brutal force
 * Second may
 * be Divid and Conquer
 *
 * @author open201
 *
 */
public class Ono {
  /**
   * f(n) = s.length = n;
   *
   * @param s
   * @param q
   * @return
   */
  public static int BrutalForceSearch(int[] s, int q) {
    for (int i = 0; i < s.length; i++) {
      if (q == s[i])
        return i;
    }
    return -1;
  }
  /**
   * f(n) = log(n)
   *
   * @param s
   * @param q
   * @return
   */
  public static int DCSearch(int[] s, int q, int startIndex, int endIndex) {
    if (startIndex > endIndex)
      return -1;
    else {
      int mid = (startIndex + endIndex) / 2;
      if (s[mid] == q)
        return mid;
      else {
        if (s[mid] > q)
          return DCSearch(s, q, startIndex,mid-1);
        else
          return DCSearch(s, q, mid+ 1,endIndex);
      }
    }
  }
  public static void main(String[] args) {
    int [] s = new int[10000000];
    for(int i = 0;i<10000000;i++){
      s[i] = i;
    }
    int q = 10000000-1;
    long startTime = System.currentTimeMillis();
    System.out.println(BrutalForceSearch(s, q));
    long endTime = System.currentTimeMillis();
    System.out.println(endTime-startTime);
    startTime = System.currentTimeMillis();
    System.out.println(DCSearch(s, q, 0, s.length - 1));
    endTime = System.currentTimeMillis();
    System.out.println(endTime-startTime);
  }
}

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設計有所幫助。

相關(guān)文章

  • java中枚舉的詳細使用介紹

    java中枚舉的詳細使用介紹

    本篇文章介紹了,在java中枚舉的詳細使用。需要的朋友參考下
    2013-04-04
  • 深入淺析JSON在java中的使用

    深入淺析JSON在java中的使用

    這篇文章主要介紹了JSON在java中的使用,包括javaBean和json的互轉(zhuǎn),List 和 json 的互轉(zhuǎn)及map 和 json 的互轉(zhuǎn),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-04-04
  • SpringBoot通過RedisTemplate執(zhí)行Lua腳本的方法步驟

    SpringBoot通過RedisTemplate執(zhí)行Lua腳本的方法步驟

    這篇文章主要介紹了SpringBoot通過RedisTemplate執(zhí)行Lua腳本的方法步驟,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Java OpenCV4.0.0實現(xiàn)實時人臉識別

    Java OpenCV4.0.0實現(xiàn)實時人臉識別

    這篇文章主要為大家詳細介紹了Java OpenCV4.0.0實現(xiàn)實時人臉識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • mybatis教程之動態(tài)sql語句_動力節(jié)點Java學院整理

    mybatis教程之動態(tài)sql語句_動力節(jié)點Java學院整理

    這篇文章主要介紹了mybatis教程之動態(tài)sql語句,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Java聊天室之使用Socket實現(xiàn)傳遞圖片

    Java聊天室之使用Socket實現(xiàn)傳遞圖片

    這篇文章主要為大家詳細介紹了Java簡易聊天室之使用Socket實現(xiàn)傳遞圖片功能,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以了解一下
    2022-10-10
  • springboot下使用mybatis的方法

    springboot下使用mybatis的方法

    這篇文章主要介紹了springboot下使用mybatis的方法,需要的朋友可以參考下
    2017-11-11
  • SpringMVC REST風格深入詳細講解

    SpringMVC REST風格深入詳細講解

    這篇文章主要介紹了SpringMVC REST風格,Rest全稱為Representational State Transfer,翻譯為表現(xiàn)形式狀態(tài)轉(zhuǎn)換,它是一種軟件架構(gòu)
    2022-10-10
  • Java?將HTML轉(zhuǎn)為XML的詳細步驟

    Java?將HTML轉(zhuǎn)為XML的詳細步驟

    這篇文章主要介紹了Java?將HTML轉(zhuǎn)為XML,本文將以html轉(zhuǎn)為xml格式為例,介紹如何實現(xiàn)轉(zhuǎn)換,以下是詳細方法及步驟,需要的朋友可以參考下
    2022-06-06
  • 原生Java操作mysql數(shù)據(jù)庫過程解析

    原生Java操作mysql數(shù)據(jù)庫過程解析

    這篇文章主要介紹了原生Java操作mysql數(shù)據(jù)庫過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11

最新評論

阜宁县| 阜阳市| 大邑县| 遂昌县| 新和县| 汾西县| 剑河县| 察雅县| 施秉县| 延吉市| 施秉县| 澄江县| 宁德市| 靖宇县| 遂昌县| 漠河县| 娄底市| 永和县| 湘阴县| 德阳市| 蒙自县| 阳朔县| 台中市| 兰西县| 图木舒克市| 田东县| 十堰市| 延庆县| 琼海市| 册亨县| 怀宁县| 辽宁省| 垫江县| 德令哈市| 汕尾市| 理塘县| 澜沧| 大安市| 舒城县| 阳西县| 陆川县|