隨筆:20 文章:1 評論:8 引用:0
╰⊙д⊙╯。oо○
面朝大?!ご号ㄩ_
BlogJava
首頁
發新隨筆
發新文章
聯系
聚合
管理
堆排序代碼
#include
<
iostream
>
#include
<
algorithm
>
using
namespace
std;
int
A[
11
],heap_size;
void
MaxHeapify(
int
A[],
int
i)
{
int
largest
=-
1
;
int
left
=
2
*
i;
//
獲取根節點的左孩子
int
right
=
2
*
i
+
1
;
//
獲取根節點的右孩子
if
(left
<=
heap_size
&&
A[left]
>
A[i])
largest
=
left;
else
largest
=
i;
if
(right
<=
heap_size
&&
A[right]
>
A[largest])
largest
=
right;
if
(largest
!=
i)
//
根節點不是最大值則交換后繼續遞歸
{
swap(A[i],A[largest]);
MaxHeapify(A,largest);
}
}
void
BuildMaxHeap(
int
A[])
{
for
(
int
i
=
10
/
2
;i
>=
1
;i
--
)
MaxHeapify(A,i);
}
int
main()
{
int
i;
heap_size
=
10
;
for
(i
=
1
;i
<
11
;i
++
)
cin
>>
A[i];
BuildMaxHeap(A);
cout
<<
"
建立的最大堆為:
"
;
for
(i
=
1
;i
<
11
;i
++
)
cout
<<
A[i]
<<
"
-
"
;
cout
<<
endl;
for
(i
=
10
;i
>
1
;i
--
)
{
swap(A[i],A[
1
]);
heap_size
--
;
MaxHeapify(A,
1
);
}
cout
<<
"
排序后的結果為:
"
;
for
(i
=
1
;i
<
11
;i
++
)
cout
<<
A[i]
<<
"
"
;
cout
<<
endl;
return
0
;
}
發表于 2008-10-06 15:13
dreamingnest
閱讀(341)
評論(0)
編輯
收藏
CALENDER
<
2008年10月
>
日
一
二
三
四
五
六
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
常用鏈接
我的隨筆
我的文章
我的評論
我的參與
最新評論
留言簿
(1)
給我留言
查看公開留言
查看私人留言
隨筆分類
(13)
應用程序(4)
(rss)
數據結構(java)
(rss)
算法程序總結(2)
(rss)
鏈表和棧(結)(7)
(rss)
隨筆檔案
(21)
2008年10月 (1)
2008年5月 (7)
2008年4月 (13)
外面的世界
懶散狂徒的專欄(天行健,君子以自強不息 地勢坤,君子以厚德載物)
(rss)
這里的朋友
保爾任(思想比知識更重要 成長比成功更重要)
搜索
最新評論
1.?re: BFS和DFS兩種方法獲取指定目錄下的所有目錄和文件
學習了
--fejay
2.?re: 關于螞蟻問題(Ants)
實際過程可以這么進行抽象模擬:
序列中的元素帶有方向,進行負值部分移動到負值區域,正值部分移動到正值區域時就不再發生碰撞,此時絕對值最小的值決定剩余爬行時間
--zdh
3.?re: 關于螞蟻問題(Ants)
這個問題看到實質就很簡單,所有的螞蟻都是相同的螞蟻,因此可以看成所有的螞蟻都可以穿過對面爬過來的螞蟻就ok啦,最長時間就是兩端的螞蟻向另一端爬出去,最短的就是兩端的四個螞蟻向所在端爬出:)
--zdh
4.?re: 關于螞蟻問題(Ants)
評論內容較長,點擊標題查看
--blues
5.?re: 關于螞蟻問題(Ants)
評論內容較長,點擊標題查看
--dreamingnest
閱讀排行榜
1.?關于螞蟻問題(Ants)(2248)
2.?通過排序總結java泛型數組列表(1650)
3.?堆棧解(非遞歸)決迷宮問題(1416)
4.?ACM中使用JAVA的介紹(1048)
5.?~·掃雷小游戲·~(1037)
評論排行榜
1.?關于螞蟻問題(Ants)(7)
2.?BFS和DFS兩種方法獲取指定目錄下的所有目錄和文件(1)
3.?一著名軟件公司的java筆試算法題的答案 (0)
4.?堆棧解(非遞歸)決迷宮問題(0)
5.?堆排序代碼(0)
Powered By:
博客園
模板提供
:
滬江博客
主站蜘蛛池模板:
枝江市
|
大化
|
盘锦市
|
湘西
|
华安县
|
清丰县
|
灵台县
|
奉化市
|
阳东县
|
宽城
|
土默特右旗
|
铁岭县
|
临沭县
|
江津市
|
日喀则市
|
长治县
|
溧水县
|
新宾
|
且末县
|
彭阳县
|
渭南市
|
大田县
|
丰台区
|
师宗县
|
普陀区
|
册亨县
|
河南省
|
哈巴河县
|
阿图什市
|
广州市
|
巴楚县
|
舞阳县
|
和顺县
|
陆丰市
|
历史
|
齐齐哈尔市
|
自治县
|
云阳县
|
恩平市
|
淅川县
|
大田县
|