国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

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

建設(shè)一個(gè)網(wǎng)站需要哪些材料合肥seo排名公司

建設(shè)一個(gè)網(wǎng)站需要哪些材料,合肥seo排名公司,中國(guó)地圖36個(gè)省的地圖,怎么自己做網(wǎng)站教程堆排序(二) 把數(shù)組從零開始連續(xù)的一段 完全二叉樹 size i 左 son 2*11 i 右 son 2*12 父 (i-1) / 2 堆是完全二叉樹,分為大根堆和小根堆 在完全二叉樹里,每一棵子數(shù)最大的值是頭節(jié)點(diǎn)的值,就是大根堆 同理&…
堆排序(二)

把數(shù)組從零開始連續(xù)的一段 = 完全二叉樹 size

i 左 son 2*1+1

i 右 son 2*1+2

父 (i-1) / 2

堆是完全二叉樹,分為大根堆和小根堆

在完全二叉樹里,每一棵子數(shù)最大的值是頭節(jié)點(diǎn)的值,就是大根堆

同理,在完全二叉樹里,每一棵子數(shù)最小的值是頭節(jié)點(diǎn)的值,就是小根堆

大根堆排序,插入的值 和 父節(jié)點(diǎn)比較,如果比父節(jié)點(diǎn)大,和它交換,直到最大,就停止,通過(guò)這樣的調(diào)整,得到的一定是大根堆。這個(gè)過(guò)程,我們叫做 heapInsert

public static void heapInsert(int [] arr, int index) {while (arr[index] > arr[(index - 1) / 2]) {// 和父節(jié)點(diǎn)交換值  并且把當(dāng)前下標(biāo)移動(dòng)到父節(jié)點(diǎn)swap(arr, index, (index - 1) / 2); index = (index - 1) / 2; }
}

從一堆數(shù)中找出最大值,移除它,保持還是大根堆,我們管這個(gè)過(guò)程叫做heapify

public static void heapify(int [] arr, int index, int heapSize) {int left = index * 2 + 1; // 左孩子的下標(biāo)while (left < heapSize) { // 下方還有孩子 (左孩子越界,那么就沒(méi)有右孩子了。)// 倆個(gè)孩子中,誰(shuí)的值大,把下標(biāo)給誰(shuí) (先找出孩子中最大的)int largest = left + 1 < heapSize && arr[left + 1] > arr[left] ? left + 1:left;// 父和孩子之間,誰(shuí)的值大,把下標(biāo)給誰(shuí) (較大的孩子和父節(jié)點(diǎn)找出最大的)largest = arr[largest] > arr[index] ? largest : index;if (largest == index) { // 如果當(dāng)前節(jié)點(diǎn)就是最大的 跳出break;}swap(arr, largest, index); // 交換位置index = largest; // 繼續(xù)比較left = index * 2 + 1; // 找左孩子繼續(xù) while}
}

題目:

已知一個(gè)幾乎有序的數(shù)組,幾乎有序是指,如果把數(shù)組排好順序的話,每個(gè)元素移動(dòng)的距離可以不超過(guò)K,并且K相對(duì)于數(shù)組來(lái)說(shuō)比較小。請(qǐng)選擇一個(gè)合適的排序算法針對(duì)這個(gè)數(shù)據(jù)進(jìn)行排序。

假如K = 6 ,建立一個(gè)heapSize = 7 的小根堆 (這樣小根堆的最小值一定是數(shù)組的最小值)

把最小的彈出,保持小根堆,新加入的數(shù)字做heapfiy,

繼續(xù)上面的步驟,直到全部彈出。

public static void main(String[] args) {PriorityQueue<Integer> heap = new PriorityQueue<>();heap.add(8);heap.add(4);heap.add(10);heap.add(3);while(!heap.isEmpty) {System.out.println(heap.poll());}
}
http://m.aloenet.com.cn/news/39429.html

相關(guān)文章:

  • 網(wǎng)站免費(fèi)下載軟件游戲推廣怎么做
  • 門戶網(wǎng)站開發(fā)框架qq群怎么優(yōu)化排名靠前
  • 用bootstrap做網(wǎng)站管理系統(tǒng)優(yōu)秀網(wǎng)站設(shè)計(jì)賞析
  • 平面設(shè)計(jì)如何在家接單seo網(wǎng)絡(luò)優(yōu)化培訓(xùn)
  • 設(shè)計(jì)網(wǎng)站 常用字體百度推廣怎么聯(lián)系
  • 有阿里云主機(jī)管理平臺(tái)如何自己做網(wǎng)站市場(chǎng)監(jiān)督管理局是干什么的
  • 正能量軟件不良網(wǎng)站免費(fèi)入口好看的友情鏈接代碼
  • 網(wǎng)站商城建站谷歌 翻墻入口
  • qq自動(dòng)發(fā)貨平臺(tái)網(wǎng)站怎么做嘉定區(qū)整站seo十大排名
  • app設(shè)計(jì)素材網(wǎng)站2023新聞大事10條
  • 中英文雙語(yǔ)企業(yè)網(wǎng)站長(zhǎng)春關(guān)鍵詞優(yōu)化平臺(tái)
  • 聊城陽(yáng)谷網(wǎng)站建設(shè)百度官網(wǎng)優(yōu)化
  • 小程序個(gè)人開發(fā)全過(guò)程天津seo推廣
  • 石家莊網(wǎng)絡(luò)公司查封??趕eo計(jì)費(fèi)
  • 鄭州網(wǎng)站建設(shè)電話seo外鏈推廣員
  • 下載app到手機(jī)seo系統(tǒng)是什么
  • 外貿(mào)網(wǎng)站開發(fā)公司百度上怎么發(fā)布信息啊
  • 臨沂蒼山網(wǎng)站建設(shè)百度聯(lián)盟
  • wordpress 電話鶴壁seo推廣
  • 做任務(wù)賺q紅包的網(wǎng)站百度統(tǒng)計(jì)收費(fèi)嗎
  • ps網(wǎng)站頭部如何優(yōu)化培訓(xùn)方式
  • 找別人做網(wǎng)站需要注意什么百度權(quán)重10的網(wǎng)站
  • 臨沂網(wǎng)站建設(shè)設(shè)計(jì)百度識(shí)圖網(wǎng)站
  • 網(wǎng)上服裝設(shè)計(jì)培訓(xùn)班seo推廣具體做什么
  • 鄭州網(wǎng)站seo優(yōu)微信朋友圈廣告在哪里做
  • 廣州小型網(wǎng)站建設(shè)公司平面設(shè)計(jì)正規(guī)培訓(xùn)機(jī)構(gòu)
  • 視頻彈幕網(wǎng)站怎么做百度搜索提交入口
  • 個(gè)人做商城網(wǎng)站大概多少錢友鏈網(wǎng)站
  • 做網(wǎng)站商城開發(fā)什么語(yǔ)言最快seo站內(nèi)優(yōu)化培訓(xùn)
  • 煙臺(tái)企業(yè)網(wǎng)站開發(fā)清博大數(shù)據(jù)輿情監(jiān)測(cè)平臺(tái)