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文件上傳和下載(21137)
2.?javax.naming.CommunicationException 的一個相關異常(已解決)(11559)
3.?自己寫的一個c#winform打印類(8516)
4.?C# 與 C++ 數據類型比較及結構體轉換 (7224)
5.?WebSphere7.0 上部署struts2 找不到用于處理 JSP 的擴展處理器(2991)
評論排行榜
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; }
}
}
二冒泡法:比較容易,它的內層循環保證遍歷一次后,集合中最?。ù螅┰爻霈F在它的正確位置,下一次就是次小元素。。。該方法在集合分布的各種情況下交換移動的次數基本不變,屬于最慢的一種排序。實現也是雙重循環控制。這種排序法屬于過江龍,就是要找到極端,但是過獎龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.
處理代碼如下:
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
賀挺
閱讀(334)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © 賀挺
主站蜘蛛池模板:
长治市
|
道真
|
通榆县
|
罗田县
|
土默特右旗
|
资溪县
|
安新县
|
涡阳县
|
平度市
|
永川市
|
肥城市
|
腾冲县
|
高安市
|
建阳市
|
乐东
|
玛多县
|
淳安县
|
芜湖市
|
大悟县
|
曲松县
|
蕲春县
|
孙吴县
|
白银市
|
根河市
|
澎湖县
|
永登县
|
莱西市
|
黄大仙区
|
崇阳县
|
河间市
|
柳江县
|
沧州市
|
灵璧县
|
化州市
|
中超
|
镶黄旗
|
阿鲁科尔沁旗
|
通江县
|
怀安县
|
锦州市
|
浮山县
|