資料結構之排序演算法(五

2021-08-24 23:35:42 字數 747 閱讀 3975

// 索引堆

function swap(arr, x, y)

// 索引堆

儲存結構為兩個陣列

第乙個陣列 為索引

第二個陣列為  值

每次取最大值的時候,只改變索引結構  而值不變  這樣保證了資料的一致性

class maxheap

// 返回 資料的大小

size()

// 判斷item是否是 空的

isempty()

// 新增新元素

insert (item)

shiftup(count)

}// 出堆

extractmax()

return null;

}shiftdown(k)

// 如果父節點 大於子節點最大值  則跳出迴圈

if( this.item[this.indexes[k]] > this.item[this.indexes[j]])

swap(this.indexes, k, j);

k=j;}}

//生成乙個陣列

function generate(n, rangel, rangr)

console.log(max.indexes);

console.log(max.item)

console.log(arr)

var  arr = generate(10, 0, 10);

heapsort(arr, 10);

資料結構和演算法之排序五 選擇排序

所以說呀這就是強盜行為,遇到自己想的就拿過來,還有比這更強盜的麼。上 表示敬意 public static void selectsort int arr 我們可以看見我們控制次數的時候進行了 1的操作,這時因為你都保證前邊所有的資料都通過排序處理好了,那麼最後乙個可不就是無冕之王,待著最後了唄。裡...

資料結構之排序演算法

1.插入排序 直接插入排序 include void insertsort int unsort int length unsort j temp int main void insertsort num,7 int i 0 for i i 7 i return 0 折半插入排序 include v...

資料結構之排序演算法

學過好久的東西,感覺都忘記的差不多了,雖然可能日常寫 的過程之中也可能寫過一些演算法,但是從來都沒有規整,最近忙裡偷閒,寫點關於排序的演算法,當然好多人都寫過一些很不錯的演算法blog,我寫一下,只是方便自己日後檢視,當然也給有需要的朋友一些參考,歡迎指正 排序演算法有 氣泡排序,選擇排序,插入排序...