青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
Networking /C++/Linux
C++博客
::
首頁
::
聯系
::
聚合
::
管理
11 Posts :: 14 Stories :: 1 Comments :: 0 Trackbacks
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(4)
給我留言
查看公開留言
查看私人留言
我參與的團隊
隨筆分類
Algorithms(7)
C/C++(3)
Link(算法)
Linux environment program(2)
Linux 網絡(3)
Python
ThreadPool(1)
web configuration(1)
隨筆檔案
2011年12月 (11)
文章分類
C/C++(11)
DEBUG(3)
IPC(4)
Linux environment programming(9)
NoSQL(5)
安全(1)
文章檔案
2011年12月 (14)
Edit
Vim
算法
sysu_mjc
算法
搜索
最新評論
1.?re: libevent example
buffer被釋放了兩次!
--n?w?e?m?t?f
閱讀排行榜
1.?epoll 實例(1365)
2.?libevent和libcurl的一些學習(1283)
3.?double list(823)
4.?heap sort (Heap 的build,排序)(769)
5.?red-black tree c語言實現(741)
評論排行榜
1.?epoll 實例(0)
2.?epoll 理論(0)
3.?Linux 使用pid文件結束nginx(0)
4.?Makefile 的編寫(0)
5.?red-black tree c語言實現(0)
heap sort (Heap 的build,排序)
堆實際上是一個數組對象,可以被視為一個完全二叉樹,有完全二叉樹的遍歷得到(算法導論第六章)
思想:
最大堆和最小堆:
本文以最大堆作為介紹,主要的函數 max_heapify 和 heap_sort 利用遞歸
max_heapify函數的主要作用是調整對的結構,是其滿足最大堆的性質(其中利用遞歸),
max_heapify(int i,int len)len參數是數組的個數,i參數是“備用根”的下標。
代碼:
1
#include
<
iostream
>
2
#include
<
stdlib.h
>
3
#include
<
time.h
>
4
using
namespace
std;
5
6
class
heap
{
7
public
:
8
heap()
9
{
10
a
=
NULL;
11
size
=
10
;
12
heap(size);
13
}
14
15
heap(
int
size_t):size(size_t)
16
{
17
a
=
new
int
[size
+
1
];
18
srand(time(NULL));
19
20
for
(
int
i
=
1
;i
<=
size;i
++
)
21
{
22
a[i]
=
rand()
%
1000
;
23
}
24
}
25
26
/**/
/*
heap(int *b)
27
{
28
int len=sizeof(b);
29
size=len;
30
a=new int[size+1];
31
32
for(int i=1;i<=size;i++)
33
{
34
a[i]=b[i-1];
35
}
36
}
*/
37
38
~
heap()
39
{
40
cout
<<
"
Destroy
..\n
"
;
41
delete []a;
42
a
=
NULL;
43
}
44
45
void
max_heapify(
int
i,
int
len);
46
void
build_heap();
47
void
heap_sort();
48
49
50
void
print();
51
52
int
left(
int
i)
{
return
2
*
i;}
53
int
right(
int
i)
{
return
2
*
i
+
1
;}
54
int
parent(
int
i )
{
return
i
/
2
;}
55
private
:
56
int
*
a;
57
int
size;
58
}
;
59
60
void
heap::heap_sort()
61
{
62
int
len
=
size;
63
int
t;
64
65
for
(
int
i
=
size;i
>=
2
;i
--
)
66
{
67
t
=
a[
1
];
68
a[
1
]
=
a[i];
69
a[i]
=
t;
70
71
len
--
;
72
73
max_heapify(
1
,len);
74
}
75
}
76
77
78
void
heap::max_heapify(
int
i,
int
len)
79
{
80
int
lt,rt;
81
int
max
=
0
;
82
83
lt
=
left(i);
84
rt
=
right(i);
85
86
if
(lt
<=
len
&&
a[lt]
>
a[i])
{
87
max
=
lt;
88
}
89
else
{
90
max
=
i;
91
}
92
93
if
(rt
<=
len
&&
a[rt]
>
a[max])
{
94
max
=
rt;
95
}
96
97
if
(max
!=
i)
{
98
int
t;
99
t
=
a[i];
100
a[i]
=
a[max];
101
a[max]
=
t;
102
103
max_heapify(max,len);
104
}
105
}
106
107
void
heap::build_heap()
108
{
109
for
(
int
i
=
size
/
2
;i
>=
1
;i
--
)
110
{
111
max_heapify(i,size);
112
}
113
}
114
115
void
heap::print()
116
{
117
for
(
int
i
=
1
;i
<=
size;i
++
)
118
{
119
cout
<<
a[i]
<<
"
\t
"
;
120
}
121
cout
<<
endl;
122
}
123
124
125
int
main()
126
{
127
heap test(
10
);
128
//
test.print();
129
130
131
//
cout<<endl;
132
test.build_heap();
133
test.print();
134
135
cout
<<
endl;
136
test.heap_sort();
137
test.print() ;
138
139
}
別人的實現:
http://www.cnblogs.com/dolphin0520/archive/2011/10/06/2199741.html
http://student.zjzk.cn/course_ware/data_structure/web/paixu/paixu8.4.2.2.htm
http://www.cnblogs.com/lovemo1314/archive/2011/09/13/2175032.html
posted on 2011-12-05 14:35
likun
閱讀(769)
評論(0)
編輯
收藏
引用
所屬分類:
Algorithms
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
double list
heap sort (Heap 的build,排序)
unix的貪吃蛇小游戲
已知一個函數f可以等概率的得到1-5間的隨機數,問怎么等概率的得到1-7的隨機數
red-black tree c語言實現
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright @ likun
Powered by:
.Text
and
ASP.NET
Theme by:
.NET Monster
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美国产免费
|
午夜精品久久久久影视
|
国产亚洲人成网站在线观看
|
欧美午夜不卡视频
|
欧美高清视频一区二区
|
欧美激情第五页
|
欧美日韩一区在线视频
|
欧美体内谢she精2性欧美
|
欧美午夜精品久久久久久人妖
|
亚洲盗摄视频
|
亚洲欧洲精品一区二区三区不卡
|
国产一区二区三区av电影
|
亚洲大胆女人
|
欧美性久久久
|
久久久免费精品视频
|
久久精品国产精品亚洲精品
|
欧美在线视频在线播放完整版免费观看
|
亚洲视频在线观看免费
|
亚洲自啪免费
|
久久久免费观看视频
|
欧美国产欧美亚洲国产日韩mv天天看完整
|
亚洲欧美偷拍卡通变态
|
亚洲欧美电影院
|
欧美一区二区国产
|
久久综合久久综合九色
|
欧美日韩在线一区
|
黄色日韩在线
|
一区二区三区产品免费精品久久75
|
欧美国产日韩一区二区在线观看
|
国产亚洲精品美女
|
亚洲国产成人tv
|
a91a精品视频在线观看
|
久久都是精品
|
亚洲精品国产精品乱码不99
|
亚洲欧美另类久久久精品2019
|
久久久久久91香蕉国产
|
国产精品v欧美精品v日韩精品
|
国产一区亚洲一区
|
亚洲视频免费在线
|
麻豆精品在线视频
|
亚洲一区在线观看视频
|
欧美在线亚洲综合一区
|
欧美激情综合五月色丁香
|
国产一级久久
|
亚洲一区视频
|
欧美黄色一区二区
|
久久国产精品亚洲77777
|
欧美特黄视频
|
一区二区三区日韩欧美精品
|
欧美激情免费观看
|
久久精品国产清自在天天线
|
91久久国产综合久久91精品网站
|
香蕉久久a毛片
|
一区二区三区视频观看
|
欧美久久电影
|
亚洲乱码久久
|
亚洲国产欧美另类丝袜
|
免费一区视频
|
亚洲精品视频一区
|
欧美激情国产高清
|
免费在线亚洲欧美
|
亚洲欧洲综合另类在线
|
亚洲高清免费
|
欧美精品一区二区高清在线观看
|
91久久极品少妇xxxxⅹ软件
|
欧美成人资源
|
欧美精品电影在线
|
欧美高清成人
|
亚洲精选视频免费看
|
欧美激情亚洲国产
|
欧美激情aⅴ一区二区三区
|
亚洲激情综合
|
91久久综合亚洲鲁鲁五月天
|
欧美精品日韩一本
|
亚洲视频在线观看一区
|
亚洲视频综合在线
|
国产女主播在线一区二区
|
性色一区二区三区
|
欧美一区二区三区喷汁尤物
|
激情久久中文字幕
|
亚洲国产成人精品久久
|
夜夜狂射影院欧美极品
|
亚洲精品免费网站
|
国产综合久久久久久鬼色
|
亚洲欧美日韩精品久久久久
|
亚洲一区二区免费视频
|
国产一区二区三区直播精品电影
|
久久乐国产精品
|
蜜桃av一区二区三区
|
99精品久久久
|
亚洲欧美一区二区在线观看
|
精品动漫一区
|
99精品热视频只有精品10
|
欧美成人精品在线播放
|
av成人毛片
|
欧美一区二区三区四区视频
|
亚洲黄色一区
|
亚洲一区美女视频在线观看免费
|
国产视频在线观看一区二区
|
欧美激情一区二区在线
|
国产精品日本
|
欧美福利网址
|
国产精品午夜av在线
|
免费亚洲一区
|
国产精品久久久一区麻豆最新章节
|
久久精品五月婷婷
|
欧美久久久久中文字幕
|
久久久久久久一区二区
|
欧美日韩精品伦理作品在线免费观看
|
欧美制服丝袜第一页
|
欧美国产一区视频在线观看
|
欧美在线免费一级片
|
欧美理论在线播放
|
久久综合国产精品
|
国产精品美女久久久免费
|
亚洲福利在线观看
|
好看的亚洲午夜视频在线
|
一区二区精品国产
|
亚洲乱码国产乱码精品精
|
欧美一区二区观看视频
|
亚洲小少妇裸体bbw
|
久久亚洲精品网站
|
久久精品人人
|
国产精品一区免费视频
|
日韩视频精品在线
|
亚洲肉体裸体xxxx137
|
久久久久久亚洲精品杨幂换脸
|
亚洲欧美日韩国产精品
|
欧美日韩在线免费视频
|
亚洲经典在线看
|
亚洲日韩中文字幕在线播放
|
久久亚洲精品欧美
|
欧美成人精品不卡视频在线观看
|
国产人成一区二区三区影院
|
一区二区免费在线播放
|
一区二区高清视频在线观看
|
欧美刺激性大交免费视频
|
极品少妇一区二区三区
|
亚洲欧洲av一区二区三区久久
|
亚洲一品av免费观看
|
欧美理论电影在线播放
|
蜜臀av性久久久久蜜臀aⅴ
|
久久亚洲精品一区二区
|
欧美日韩伦理在线免费
|
欧美亚一区二区
|
夜夜嗨av一区二区三区四季av
|
麻豆成人在线播放
|
国产一区二区日韩
|
久久久999
|
亚洲视频播放
|
欧美亚洲成人免费
|
亚洲图色在线
|
亚洲美女av黄
|
欧美精品福利在线
|
日韩小视频在线观看专区
|
久久夜色精品亚洲噜噜国产mv
|
一区二区三区视频观看
|
国产精品爽爽爽
|
久久er99精品
|
亚洲国产美女久久久久
|
久久久久久久久久码影片
|
亚洲三级免费
|
欧美一级淫片aaaaaaa视频
|
欧美激情精品久久久
|
亚洲激情中文1区
|
一区二区三区成人
|
国产精品视频不卡
|
久久久久亚洲综合
|
最新日韩在线
|
新67194成人永久网站
|
在线观看欧美
|
欧美欧美全黄
|
欧美在线视频二区
|
91久久一区二区
|
欧美专区第一页
|
亚洲高清在线播放
|
欧美色道久久88综合亚洲精品
|
亚洲尤物影院
|
欧美国产免费
|
午夜国产精品影院在线观看
|
影音欧美亚洲
|
欧美日韩在线第一页
|
久久精品国产欧美亚洲人人爽
|
亚洲日本成人网
|
久久夜色精品
|
亚洲一卡久久
|
极品少妇一区二区
|
国产精品日日做人人爱
|
美女精品国产
|
亚洲欧美日韩区
|
99精品欧美一区二区三区综合在线
|
久久理论片午夜琪琪电影网
|
亚洲视频在线观看视频
|
在线观看视频免费一区二区三区
|
国产精品二区影院
|
欧美激情成人在线
|
免费一级欧美片在线观看
|
久久精品30
|
欧美一区中文字幕
|
亚洲图片在区色
|