黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java算法學習視頻之常見的算法有哪些

Java算法學習視頻之常見的算法有哪些

更新時間:2020-09-08 15:18:41 來源:動力節點 瀏覽2590次

編程語言的幾種基本算法主要有以下幾個:

1、插入排序(直接插入排序、希爾排序)

2、交換排序(冒泡排序、快速排序)

3、選擇排序(直接選擇排序、堆排序)

4、歸并排序

5、分配排序(箱排序、基數排序)

按照條件來使用排序算法:

所需輔助空間最多:歸并排序

所需輔助空間最少:堆排序

平均速度最快:快速排序

不穩定:快速排序、希爾排序、堆排序

選擇排序算法的時候:

1、數據的規模

2、數據的類型

3、數據已有的順序

一般來說,當數據規模較小時,應該直接插入排序或冒泡排序。任何排序算法在數據量小時基本體現不出來差距。考慮數據的類型,比如如果全部是正整數,那么考慮使用桶排序最優。考慮數據已有順序,快速排序是一種不穩定的排序(可以改進),對于大部分排好的數據,快速排序會浪費大量不必要的步驟。數據量極小,而且已經基本排好序,冒泡是最佳選擇。我們說快速排序好,是指大量隨機數據下,快速排序效果最理想。而不是所有情況。

一、插入排序

1、直接插入排序

講一個記錄插入到已經排好序的有序表中。

①sorted數組的第0個位置沒有放數據

②從sorted第二個數據開始處理;如果該數據比它前面的數據要小,說明該數據要往前面移動。

步驟:

a.首先將數據備份放到sorted的第0個位置當哨兵

b.然后將該數據前面那個數據后移

c.然后往前搜索,找到插入位置

d.找到插入位置之后講,第0個位置的那個數據插入對應位置。

時間復雜度:O(nn),當待排記錄序列為正序時,時間復雜度提高至O(n)

Java算法學習視頻之常見的算法有哪些

直接插入排序例子java語言實現

public?class?InsertionSort?{
	
	//插入排序:?直接插入排序,?希爾排序
	public?static?void?straighInsertionSort(double[]?sorted){
		int?length?=?sorted.length;
		for(int?i=2;?i=0;?j--){
					if(sorted[j]?>?sorted[0]){
						sorted[j+1]?=?sorted[j];??//后移一位
					}else{
						insert?=?j+1;??//插入的位置
						break;
					}
				}
				sorted[insert]?=?sorted[0];
			}
		}
	}
	
	public?static?void?main(String[]?args)?{
		Random?random?=?new?Random(6);
		int?arraySize?=?21;
		double[]?sorted?=?new?double[arraySize];
		
		System.out.println("排序前:");
		for(int?i=1;i

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 欧美日韩视频在线 | 中国女人三级在线播放 | 国产在线播放一区二区 | 免费观看黄色的网站 | 成人a视频| 又黄又爽视频在线观看 | 日本黄色片网址 | 美女鲜嫩bbbb | 亚洲一区二区三区高清网 | 日批软件在线观看 | 亚洲大尺度 | 一区二区三区国产 | 男女www视频在线看网站 | 一级一级毛片免费播放 | 亚洲成人在线播放 | 欧美激情伊人 | 久色网| 国内精品久久久久久久影视麻豆 | 欧美行性性性o00x | 国产亚洲欧美久久精品 | 亚洲欧美日韩天堂在线观看 | 一级理论片 | 久久免费视频播放 | 高清一区二区亚洲欧美日韩 | 成人黄色在线免费观看 | 交性大片欧美多人 | 男女无遮挡毛片视频播放 | 555成人网免费观看视频 | 日本大蕉香蕉大视频在线观看 | 欧美一级xxxx俄罗斯一级 | 国产精品欧美一区喷水 | 欧美精品成人一区二区在线观看 | 一级片视频免费 | 看一级 | 国产精品亚洲片在线观看麻豆 | 免费99视频有精品视频高清 | 国产在线精品制服丝袜 | 国产一级毛片夜一级毛片 | 美女黄色毛片 | 亚洲免费成人网 | 日韩一区二区中文字幕 |