中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

微信公眾號(hào)怎么做網(wǎng)站的怎么學(xué)互聯(lián)網(wǎng)怎么賺錢

微信公眾號(hào)怎么做網(wǎng)站的,怎么學(xué)互聯(lián)網(wǎng)怎么賺錢,wordpress掛鉤,做產(chǎn)品網(wǎng)站費(fèi)用嗎這次不排序了,對(duì)排好序的數(shù)組做個(gè)查找吧 介紹 二分查找排序英文名為BinarySort,是一種效率較高的查找方法要求線性表必須采用順序存儲(chǔ)結(jié)構(gòu) 基本思路 通過(guò)不斷地將搜索范圍縮小一半來(lái)找到目標(biāo)元素: 1、假定數(shù)組為arr,需要查找的…
  • 這次不排序了,對(duì)排好序的數(shù)組做個(gè)查找吧

介紹

  • 二分查找排序英文名為BinarySort,是一種效率較高的查找方法
  • 要求線性表必須采用順序存儲(chǔ)結(jié)構(gòu)

基本思路

  • 通過(guò)不斷地將搜索范圍縮小一半來(lái)找到目標(biāo)元素:
    • 1、假定數(shù)組為arr,需要查找的值為target
    • 2、定義left、right 和mid三個(gè)索引。mid=(left+right)/2;
    • 3、如果中間元素正好是要查找的元素,搜索結(jié)束;
      ( 即arr[mid]==target,結(jié)束)
    • 4、如果目標(biāo)元素大于中間元素,那么在數(shù)組的右半部分繼續(xù)查找
      ( 即arr[mid]>target,循環(huán)或者遞歸右半部分)
    • 5、如果目標(biāo)元素小于中間元素,那么在數(shù)組的左半部分繼續(xù)查找
      ( 即arr[mid]<target,循環(huán)或者遞歸左半部分)
    • 6、重復(fù)以上步驟,直到找到目標(biāo)元素或者搜索范圍為空(找不到目標(biāo)值)

代碼

  • 循環(huán)方法

    public static void main(String[] args) {int[] arr = {1,10, 20, 30, 40, 50, 60, 70, 80, 90};sort(arr,60);sort(arr,45);sort(arr,1);
    }public static int sort(int[] arr,int target){int left = 0;int right = arr.length-1;while(left<=right){ // 此處=是為了當(dāng)索引移動(dòng)后只剩一個(gè)時(shí),也需要比較int mid = (left+right)/2; // 放在while循環(huán)外邊就成了固定值了if(arr[mid]==target){System.out.println("找到了!");return mid;}else if(arr[mid]<target){ // 目標(biāo)值比中間值大,要往右邊查找left = mid+1;}else{    // 目標(biāo)值比中間值小,要往左邊查找right = mid-1;}}System.out.println("沒(méi)有該數(shù)值");return -1;
    }
    ------------輸出結(jié)果--------------
    找到了【60】,位置是:6
    數(shù)值【45】不存在
    找到了【1】,位置是:0
    
  • 遞歸方法

    public static void main(String[] args) {int[] arr = {1,10, 20, 30, 40, 50, 60, 70, 80, 90};digui(arr,60,0,arr.length-1);digui(arr,45,0,arr.length-1);digui(arr,1,0,arr.length-1);
    }
    public static int digui(int[] arr,int target,int left,int right){if(left>right){System.out.println("不存在該數(shù)值");return -1;}int mid = (left+right)/2;if(arr[mid]==target){System.out.println("找到了!");return mid;}else if(arr[mid]>target){ // 目標(biāo)值比中間值小return digui(arr,target,left,mid-1);}else{return digui(arr,target,mid+1,right);}
    }
    ------------輸出結(jié)果--------------
    找到了【60】,位置是:6
    數(shù)值【45】不存在
    找到了【1】,位置是:0
    

老規(guī)矩,來(lái)個(gè)流程圖

  • 希望這三張圖能幫忙大家理解為什么left<=right
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述

時(shí)間復(fù)雜度

  • 最好情況是O(1),即一下就找到了
  • 平均是O(logN)
http://www.risenshineclean.com/news/948.html

相關(guān)文章:

  • asp 做網(wǎng)站的缺點(diǎn)世界排名前十位
  • 小語(yǔ)種網(wǎng)站建設(shè)鎮(zhèn)江市網(wǎng)站
  • 做吃穿住行網(wǎng)站seo提升排名
  • 網(wǎng)站建設(shè)新零售上海百度
  • 上海網(wǎng)站備案流程app下載注冊(cè)量推廣平臺(tái)
  • wordpress頁(yè)面的排序長(zhǎng)沙百家號(hào)seo
  • 江陰 網(wǎng)站開(kāi)發(fā)新東方烹飪學(xué)校學(xué)費(fèi)價(jià)目表
  • 旅游網(wǎng)站建設(shè)內(nèi)容網(wǎng)站搜索排名優(yōu)化怎么做
  • 網(wǎng)站開(kāi)發(fā)中的網(wǎng)頁(yè)上傳和網(wǎng)站發(fā)布網(wǎng)站點(diǎn)擊量與排名
  • 公司做網(wǎng)站的費(fèi)用如何記賬軟文文案范文
  • iapp怎么把網(wǎng)站做軟件網(wǎng)站推廣計(jì)劃書范文500字
  • 設(shè)計(jì)建設(shè)網(wǎng)站搜索排名怎么做
  • 化妝品網(wǎng)站開(kāi)發(fā)流程和進(jìn)度安排網(wǎng)絡(luò)營(yíng)銷模式有哪些
  • 新余做網(wǎng)站沈陽(yáng)網(wǎng)絡(luò)營(yíng)銷推廣的公司
  • 怎么用java 做網(wǎng)站互聯(lián)網(wǎng)推廣怎么找渠道
  • 如何做網(wǎng)站與網(wǎng)頁(yè)微信營(yíng)銷軟件
  • 陜西省建設(shè)監(jiān)理協(xié)會(huì)證書查詢網(wǎng)站寧波網(wǎng)站推廣怎么做
  • 管理咨詢公司稅收優(yōu)惠青島seo優(yōu)化
  • 鎮(zhèn)江網(wǎng)站推廣南寧seo外包要求
  • 網(wǎng)站有了訂單郵箱提醒代碼營(yíng)銷策略模板
  • 這么做國(guó)外網(wǎng)站的國(guó)內(nèi)鏡像站甘肅搜索引擎網(wǎng)絡(luò)優(yōu)化
  • 西安網(wǎng)絡(luò)公司網(wǎng)站建設(shè)小紅書推廣平臺(tái)
  • 網(wǎng)站開(kāi)發(fā)基于什么平臺(tái)自己代理一款手游需要多少錢
  • go語(yǔ)言怎么搭建網(wǎng)頁(yè)東莞網(wǎng)站優(yōu)化關(guān)鍵詞排名
  • 用jsp做網(wǎng)站的難點(diǎn)云優(yōu)化
  • index.html網(wǎng)站怎么做重慶seo優(yōu)化公司
  • 免費(fèi)下載建設(shè)銀行官方網(wǎng)站濟(jì)南優(yōu)化網(wǎng)站的哪家好
  • 岳陽(yáng)網(wǎng)站開(kāi)發(fā)商城網(wǎng)絡(luò)推廣項(xiàng)目計(jì)劃書
  • 校園網(wǎng)站建設(shè)模板上海網(wǎng)站排名seo公司哪家好
  • 做網(wǎng)站賭博代理違法嗎品牌推廣是做什么的