日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java中实现的各种排序算法

發布時間:2024/9/27 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java中实现的各种排序算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java中的冒泡排序算法

package?cn.edu.hactcm;

/**

?*?冒泡排序算法

?*/

public?class?BubbleSortDemo?{

public?static?void?main(String[]?args)?{

int[]?r?=?{?22,?12,?34,?123,?65,?34,?65,?34,?567,?3,?65,?546,?4?};

BubbleSort(r);

for?(int?i?:?r)?{

System.out.print(i?+?"?");

}

}

private?static?void?BubbleSort(int[]?r)?{

Boolean?exchange;

int?tmp;

for?(int?i?=?1;?i?<?r.length;)?{

//最多做n-1趟排序

exchange?=?false;??//本趟排序開始前,交換標志應為假

for?(int?j?=?0;?j?<?r.length?-?i;?j++)?{

if?(r[j]?>?r[j+1])?{

//交換記錄

tmp?=?r[j?+?1];

r[j?+?1]?=?r[j];

r[j]?=?tmp;

exchange?=?true;//當發生了交換,提前終止算法

}

}

if?(!exchange)?{

return;

}

}

}

}

Java中插入排序算法

package?cn.edu.hactcm;

/**

?*?插入排序算法

?*/

public?class?InsertSortDemo01?{

public?static?void?main(String[]?args)?{

int?r[]?=?{?110,?3,?23,?23,?231,?342,?45?};

System.out.println("直接插入排序后的結果為:");

InsertSort(r);

for?(int?i?=?0;?i?<?r.length;?i++)?{

System.out.print(r[i]?+?"?");

}

}

public?static?void?InsertSort(int[]?r)?{

for?(int?i?=?1;?i?<?r.length;?i++)?{?//?注意此處從1開始的

if?(r[i]?<?r[i?-?1])?{//如果后者小于前者

int?temp?=?r[i];?//?要排序的數字

int?j?=?0;

for?(j?=?i?-?1;?j?>=?0?&&?temp?<?r[j];?j--)?{

r[j?+?1]?=?r[j];?//?將數據后移

}

//?若不符合上面的情況時讓數組的i個的值為temp

r[j?+?1]?=?temp;

}

}

}

}

快排:

package?cn.edu.hactcm;

/**

?*?快排算法

?*/

public?class?QuickSortDemo?{

public?static?void?main(String[]?args)?{

int?R[]?=?{?22,?12,?34,?123,?65,?34,?65,?34,?567,?3,?65,?45,?546,?4?};

quickSort(R,?0,?13);

for?(int?i?=?0;?i?<?R.length;?i++)?{

System.out.print(R[i]?+?"?");

}

}

public?static?void?quickSort(int[]?R,?int?low,?int?high)?{

if?(low?>?high)

return;

int?pivot?=?R[low];

int?i?=?low;

int?j?=?high;

while?(i?<?j)?{

while?(i?<?j?&&?R[j]?>=?pivot)

j--;

R[i]?=?R[j];?//?將后面的值賦給R[i],使小的數值排在前面

while?(i?<?j?&&?R[i]?<=?pivot)

i++;

R[j]?=?R[i];?//?當前面的數值中有大于pivot的數值時,將之后排

}

R[i]?=?pivot;?//?將空出來的位置放上pivot

quickSort(R,?low,?i?-?1);

quickSort(R,?i?+?1,?high);

}

}

Java選擇排序

package?cn.edu.hactcm;

/**

?*?選擇排序算法

?*/

public?class?SelectSortDemo?{

public?static?void?main(String[]?args)?{

int?r[]?=?{?22,?12,?34,?123,?65,?34,?65,?34,?567,?3,?65,?45,?546,?4?};

SelectSort(r);

for?(int?i?=?0;?i?<?r.length;?i++)?{

System.out.print(r[i]?+?"?");

}

}

/**

?*?選擇排序

?*?@param?r

?*/

public?static?void?SelectSort(int[]?r)?{

int?i,?j,?k;

int?temp;

for?(i?=?0;?i?<?r.length?-?1;?i++)?{

k?=?i;?//?最開始是將k的值賦給要比較的數字

for?(j?=?i?+?1;?j?<?r.length;?j++)?{

if?(r[j]?<?r[k])?{

k?=?j;?//?k記下目前找到的最小關鍵字所在的位置

}

}

if?(k?!=?i)?{?//?一定要記住是ki之間的比較

temp?=?r[i];

r[i]?=?r[k];

r[k]?=?temp;

}

}

}

}

package?cn.edu.hactcm;

import?java.io.BufferedReader;

import?java.io.IOException;

import?java.io.InputStreamReader;

/**

?*?查找元素的位置

?*/

public?class?TheFirstOne?{

public?static?void?main(String[]?args)?{

int[]?temp?=?{?10,?20,?32,?2,?565,?232,?54,?67,?34,?0?};

System.out.print("請輸入你要找的值:");

BufferedReader?buf?=?new?BufferedReader(

new?InputStreamReader(System.in));

int?key?=?0;

try?{

key?=?Integer.parseInt(buf.readLine());

}?catch?(NumberFormatException?e)?{

e.printStackTrace();

}?catch?(IOException?e)?{

e.printStackTrace();

}?finally{

if?(buf?!=?null)?{

try?{

buf.close();

}?catch?(IOException?e)?{

throw?new?RuntimeException(e.getMessage(),?e);

}

}

buf?=?null;

}

System.out.println("您要查找的元素在數組中的位置為:"?+?seqSearch(temp,?key));

}

/**

?*查詢算法

?*/

public?static?int?seqSearch(int?temp[],?int?key)?{

int?i;

for?(i?=?0;?temp[i]?!=?key;?i++);

if?(i?==?temp.length)?{

return?-1;

}?else?{

return?i;

}

}

}

package?cn.edu.hactcm;

import?java.io.BufferedReader;

import?java.io.IOException;

import?java.io.InputStreamReader;

/**

?*?查找元素的位置?

?*/

public?class?TheSecondOne?{

public?static?void?main(String[]?args)?{

int[]?temp?=?{?10,?20,?32,?2,?565,?232,?54,?67,?34,?0?};

System.out.print("請輸入你要找的值:");

BufferedReader?buf?=?new?BufferedReader(

new?InputStreamReader(System.in));

int?key?=?0;

try?{

key?=?Integer.parseInt(buf.readLine());

}?catch?(NumberFormatException?e)?{

e.printStackTrace();

}?catch?(IOException?e)?{

e.printStackTrace();

}?finally{

if?(buf?!=?null)?{

try?{

buf.close();

}?catch?(IOException?e)?{

throw?new?RuntimeException(e.getMessage(),?e);

}

}

buf?=?null;

}

System.out.println("您要查找的元素在數組中的位置為:"?+?binSearch(temp,?key));

}

/**

?*?中分查找

?*?@param?temp

?*?@param?key?:我們要找的值

?*?@return

?*/

public?static?int?binSearch(int[]?temp,?int?key)?{

int?low?=?0,?high?=?temp.length?-?1,?mid;?//?high表示數組最后一個的下標

while?(low?<=?high)?{

mid?=?(low?+?high)?/?2;

//如果中間值恰好為我們要找的值

if?(temp[mid]?==?key)

return?mid;

if?(temp[mid]?>?key)

high?=?mid?-?1;

else

low?=?mid?+?1;

}

return?-1;?//?lowhigh時表示查找區間為空,查找失敗

}

}

?

總結

以上是生活随笔為你收集整理的Java中实现的各种排序算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 涩涩精品| 丝袜熟女一区二区三区 | 长篇高h肉爽文丝袜 | 麻豆changesxxx国产| 少妇无套内谢免费视频 | 打开免费观看视频在线 | 青娱乐av | 中文字幕久久久久 | 欧美丰满少妇 | 97人人澡 | 欧美性黄色 | 久青草影视| 97香蕉 | 国产精品主播 | 茄子爱啪啪 | 欧美日韩在线免费观看视频 | 国产人人看 | 日韩黄色网页 | 91黄漫| 国产依人 | 久久艹中文字幕 | 国产超碰精品 | 中出视频在线观看 | 国产精品夫妻 | 成人一级影视 | 成人免费看aa片 | 国产一区二区视频在线观看 | 日韩激情av在线 | 亚洲视频在线视频 | 无套内谢老熟女 | 欧美,日韩,国产在线 | 91看片黄色| 用力抵着尿进去了h | 亚洲精品久久久久久久久久久 | 超碰91在线| 男ji大巴进入女人的视频 | 国产在线精品播放 | 亚洲av无一区二区三区 | 日本老熟妇乱 | 欧美无遮挡 | 中文字幕在线网站 | 国产一区二区小视频 | 欧美性猛烈 | 亚洲天堂久久新 | 黄色大片毛片 | 91视频区| 成年人免费av | 91成人在线观看高潮 | 国产精品亚洲精品 | 成人av影院在线观看 | 青在线视频 | 网友自拍第一页 | 男人用嘴添女人下身免费视频 | 91字幕网| 男操女视频网站 | 俺去操 | 亚洲女优在线观看 | 欧美自偷自拍 | 91丨九色丨国产在线 | xxx老太太 | 天天看天天色 | 欧美亚洲精品在线观看 | 日本激情影院 | 色老头av | 色婷婷av一区二区三区大白胸 | 欧美偷拍另类 | 性xxxxx大片免费视频 | 日韩精品极品视频在线观看免费 | av黄色一级片 | 看免费的毛片 | www.桃色| 国产无套粉嫩白浆内谢 | 国产精品96久久久久久 | 人妻少妇一区 | 亚洲欧美综合在线观看 | 又黄又色又爽的视频 | 探花国产精品一区二区 | 99蜜桃臀久久久欧美精品网站 | 一本色道久久88综合无码 | 97视频在线 | 爱色av网站| 狠狠热免费视频 | 国模私拍一区二区三区 | 中文字幕欧美人妻精品一区蜜臀 | 在线播放小视频 | 日韩国产在线一区 | 91高清国产 | 国产精品成人在线 | 国产伊人自拍 | 久久av一区二区三区漫画 | 亚洲一区二区自拍 | 亚洲国产av一区二区 | 欧美大片一区二区 | 欧美精品一线 | 97视频网站 | 午夜精 | 国产精品视频久久久久久久 | 欧美动态色图 | 九九资源网 |