heting
BlogJava
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
40 隨筆 :: 9 文章 :: 45 評論 :: 0 Trackbacks
<
2009年4月
>
日
一
二
三
四
五
六
29
30
31
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
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
c#范例(4)
(rss)
java范例
(rss)
js(3)
(rss)
linux(1)
(rss)
WebSphere(1)
(rss)
數據庫(3)
(rss)
隨筆檔案
2010年10月 (1)
2010年8月 (5)
2010年3月 (2)
2009年11月 (2)
2009年9月 (1)
2009年8月 (1)
2009年7月 (2)
2009年5月 (1)
2009年4月 (3)
2009年3月 (4)
2009年2月 (1)
2009年1月 (3)
2008年12月 (2)
2008年11月 (7)
2008年10月 (4)
2008年9月 (1)
文章檔案
2008年9月 (9)
搜索
最新評論
1.?re: struts2+freemarker中防止表單的重復提交token
@51互聯云-濟南程序猿
你什么都不懂,瞎說
--人
2.?re: struts2+freemarker中防止表單的重復提交token
沒關系,大家好,什么都沒有
--人
3.?re: struts2+freemarker中防止表單的重復提交token
套頭
--人
4.?re: struts2+freemarker中防止表單的重復提交token
評論內容較長,點擊標題查看
--51互聯云-濟南程序猿
5.?re: struts1文件上傳和下載
評論內容較長,點擊標題查看
--zuidaima
閱讀排行榜
1.?struts1文件上傳和下載(21131)
2.?javax.naming.CommunicationException 的一個相關異常(已解決)(11551)
3.?自己寫的一個c#winform打印類(8505)
4.?C# 與 C++ 數據類型比較及結構體轉換 (7217)
5.?WebSphere7.0 上部署struts2 找不到用于處理 JSP 的擴展處理器(2983)
評論排行榜
1.?struts1文件上傳和下載(23)
2.?自己寫的一個c#winform打印類(8)
3.?struts2+freemarker中防止表單的重復提交token(6)
4.?Ireport在瀏覽器中的顯示代碼(2)
5.?EJ3.0將EJB程序和WEb程序發布到weblogic10.3是出現的錯誤weblogic.wsee.async.AsyncResponseBean(2)
JAVA四種基本排序,包括冒泡法,插入法,選擇法,SHELL排序法
JAVA四種基本排序,包括冒泡法,插入法,選擇法,SHELL排序法.其中選擇法是冒泡法的改進,SHELL排序法是插入法的改進.所以從根本上來說可以歸納為兩種不同的排序方法:即:插入法&冒泡法
一插入法:遍歷排序集合,每到一個元素時,都要將這個元素與所有它之前的元素遍歷比較一遍,讓符合排序順序的元素挨個移動到當前范圍內它最應該出現的位置。交換是相鄰遍歷移動,雙重循環控制實現.這種排序法屬于地頭蛇類型,在我的地牌上我要把所有的東西按一定的順序規整,過來一個,規整一個.
處理代碼如下:
public
void
sort(
int
[] data)
{
int
temp;
for
(
int
i
=
1
; i〈data.length; i
++
)
{
for
(
int
j
=
i; (j〉
0
)
&&
(data[j]〉data[j
-
1
]); j
--
)
{
temp
=
date[j];
data[j]
=
data[j
-
1
];
data[j
-
1
]
=
temp; }
}
}
二冒泡法:比較容易,它的內層循環保證遍歷一次后,集合中最小(大)元素出現在它的正確位置,下一次就是次小元素。。。該方法在集合分布的各種情況下交換移動的次數基本不變,屬于最慢的一種排序。實現也是雙重循環控制。這種排序法屬于過江龍,就是要找到極端,但是過獎龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.
處理代碼如下:
public
static
int
[] maopao(
int
[] data)
{
int
temp;
for
(
int
i
=
0
; i〈data.length
-
1
; i
++
)
{
for
(
int
j
=
i
+
1
; j〈data.length; j
++
〉
{
if
(data[i]〈data[j]〉
{
temp
=
data[i];
data[i]
=
data[j];
data[j]
=
temp;
}
〉
〉
return
data;
三選擇法:該方法只是通過遍歷集合記錄最小(大)元素的位置,一次遍歷完后,再進行交換位置操作,類似冒泡,但在比較過程中,不進行交換操作,只記錄元素位置。一次遍歷只進行一次交換操作。這個對與交換次序比較費時的元素比較適合。這種排序法比冒泡法要城府要深的多,我先記住極端數據,待遍歷數據完了之后, 我再處理,不像冒泡法那樣只要比自己極端一點的就要處理,選擇法只處理本身范圍內的最極端數據.
public
static
void
xuanze(
int
[] data)
{
int
temp;
for
(
int
i
=
0
; i 〈 data.length; i
++
〉
{
int
lowIndex
=
i;
for
(
int
j
=
data.length
-
1
; j ) i; j
--
)
{
if
(data[j] ) data[lowIndex])
{
lowIndex
=
j;
}
}
temp
=
data[i];
data[i]
=
data[lowIndex];
data[lowIndex]
=
temp;
}
}
四 Shell排序:
它是對插入排序的一種改進,是考慮將集合元素按照一定的基數劃分成組去排序,讓每一組在局部范圍內先排成基本有序,最后在進行一次所有元素的插入排序。
public
void
sort(
int
[] data)
{
for
(
int
i
=
data.length
/
2
; i)
2
; i
/=
2
)
{
for
(
int
j
=
0
; j〈i; j
++
〉
{
insertSort(data,j,i);
}
〉
insertSort(data,
0
,
1
);
〉
private
void
insertSort(
int
[] data,
int
start,
int
inc)
{
int
temp;
for
(
int
i
=
start
+
inc; i〈data.length; i
+=
inc〉
{
for
(
int
j
=
i; (j)
=
inc)
&&
(data[j]〈data[j
-
inc]〉; j
-=
inc〉
{
temp
=
data[j];
data[j]
=
data[j
-
inc]
data[j
-
inc]
=
temp;
}
〉
〉
posted on 2009-04-03 09:51
賀挺
閱讀(331)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © 賀挺
主站蜘蛛池模板:
靖安县
|
安达市
|
岚皋县
|
大厂
|
黔江区
|
宜章县
|
蓬安县
|
胶南市
|
炉霍县
|
抚顺市
|
呼图壁县
|
青浦区
|
武胜县
|
红安县
|
武冈市
|
勃利县
|
岳阳市
|
库尔勒市
|
博白县
|
丹东市
|
彭山县
|
金秀
|
南乐县
|
和田县
|
辽阳县
|
纳雍县
|
清徐县
|
湖南省
|
彝良县
|
容城县
|
庆云县
|
东兰县
|
丽江市
|
祁东县
|
昭平县
|
双鸭山市
|
宁化县
|
磐石市
|
略阳县
|
永寿县
|
平昌县
|