用javascript实现最大堆
来源:互联网 发布:mac视频后期制作软件 编辑:程序博客网 时间:2024/06/04 19:54
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><script> var heapArray = [1,2,3,4,5,6];//这里构建的是最大堆 function buildMaxHeap(heapArray,allIndex) { var lastIndex = Math.floor(heapArray.length/2)-1+allIndex; for (var index = lastIndex;index>=allIndex;index--){ var lastLeftIndex = index*2+1; if (lastLeftIndex>=heapArray.length){ continue; } var lastLeftData = heapArray[lastLeftIndex]; if (heapArray[index]<= lastLeftData){ heapArray[lastLeftIndex] = heapArray[index]; heapArray[index]= lastLeftData; init(heapArray,lastLeftIndex); } var rightLastIndex = lastLeftIndex+1; if (rightLastIndex>=heapArray.length){ continue; } if (heapArray[rightLastIndex]>= heapArray[index]){ var temp = heapArray[index]; heapArray[index]= heapArray[rightLastIndex]; heapArray[rightLastIndex] = temp; init(heapArray,rightLastIndex); } } } buildMaxHeap(heapArray,0); console.log('wori yo test',heapArray);</script></body></html>
阅读全文
0 0
- 用javascript实现最大堆
- 最大堆、索引堆、二叉搜索树的JavaScript实现
- 最大堆实现堆排序
- 最大堆实现堆排序
- 用最大堆实现优先队列
- 最大堆的实现
- 最大堆的实现
- 最大堆(c++)实现
- 最大堆实现
- Java 实现最大堆
- 最大堆的实现
- 最大堆java实现
- 用最大堆和最小堆实现中位数查找
- 用最大堆模拟最大优先级序列(Python实现)
- 最大堆及堆排序的实现
- 最小堆&&最大堆的实现(c++)
- 最小堆&&最大堆的实现(c++)
- 最大堆及堆排序的实现
- 二项分布的递归和非递归实现(Java实现)
- Dubbo入门学习--Dubbo总体架构的设计介绍
- php 求两个日期之间相差的天数(函数)
- Centos 7 安装JDK
- 初始java
- 用javascript实现最大堆
- PCB设计布线中的3种特殊走线技巧
- C++ 类型A支持强制转换类型B的写法
- 门面模式以及DI注入、容器模式
- IMPDP ORA-39152 ORA-39083 ORA-00959
- C++11右值引用
- redis集群扩容
- leetcode344. Reverse String
- ecmall 支付成功订单状态没有改变解决办法