亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

【數據結構】非比較排序--計數排序和基數排序

2019-11-06 06:06:44
字體:
來源:轉載
供稿:網友

非比較排序

1、思想 不需要進行元素之間的比較,交換,在線性的時間內完成排序。2、分類 1)計數排序 2)基數排序3、優缺點 要求的空間比較多,是典型的以空間換時間的一種做法

計數排序

1、原理 這里寫圖片描述2、代碼實現#include<iostream>using namespace std; void CountSort(int* a,int n){ //1、首先確定要開一個多大的用于統計的數組 int size = 0; int min = a[0]; int max = a[0]; for(int i = 0; i<n; i++) { if(a[i] < min) min = a[i]; if(a[i] > max) max = a[i]; } size = max-min+1; //2、開始進行統計原數組中對應下標出現的數 int* count = new int[size]; memset(count,0,sizeof(int)*size); for(int i = 0; i<n; i++) { count[a[i]-min]++; } //3、遍歷哈希表,將count數組中大于0的數對應出原數組的值, //寫入原數組中 int j = 0; for(int i = 0; i<size; i++) { while(count[i]--) { a[j++] = i+min; } } delete[] count;}//測試函數void TestCountSort(){ int a[10] = {2,5,3,8,3,7,10,9,4,0}; int sz = sizeof(a)/sizeof(a[0]); CountSort(a,sz); for(int i = 0; i<sz; i++) { cout<<a[i]<<" "; } cout<<endl;}

4、時間復雜度和空間復雜度 時間復雜度:O(N) 空間復雜度:O(k)(其中K為要排序的數組的范圍)

5、優缺點 1)缺點:由于計數排序的計數數組的大小是取決于數據的范圍,那么當要進行排序的數據范圍很大時,就需要大量的時間和內存。 2)優點: A:無需進行比較,所以時間上快于任何的比較排序。 B:適用于數據比較集中的數據排序


基數排序

1、原理 這里寫圖片描述2、分類: LSD–從低位向高位排 MSD–從高位向低位排3、代碼實現#include<iostream>using namespace std; //給一個數,求這個數有多少位int GetDigit(int* a,size_t n){ int base = 10; int digit = 1; int num = 0; for(int i = 0; i<n; i++) { while(a[i] >= base) { digit++; base *= 10; } } return digit;}void LSDdigit(int* a,int n){ int digit = GetDigit(a,n); //得到位數 int count[10] = {0}; int start[10] = {0}; int base = 1; //開辟一個新的數組,用于存放一次排序后的數 int*temp = new int[n]; while(digit--) { //首先按各位進行統計個位上的數出現的次數 for(int i = 0; i<n; i++) { int num = (a[i]/base)%10; count[num]++; } start[0] = 0; for(int i = 1; i<10; i++) { start[i] = start[i-1]+count[i-1]; } for(int i = 0; i<10; i++) { int num = (a[i]/base)%10; temp[start[num]++] = a[i]; count[num]--; } for(int i = 0; i<10; i++) { a[i] = temp[i]; } base *= 10; } delete[] temp; }//測試函數void TestLSDdigit(){ int a[10] = {73,22,93,43,55,14,28,65,39,81}; int sz = sizeof(a)/sizeof(a[0]); LSDdigit(a,sz); for(int i = 0; i<sz; i++) { cout<<a[i]<<" "; } cout<<endl;}4、時間復雜度和空間復雜度 時間復雜度:O(N*digit) 空間復雜度:O(N)

5、適用性

基數排序更適合用于對時間、字符串等這些整體權值未知的數據進行排序。注意:基數排序如果從高位向低位排的話會很麻煩

6、缺點 由于是空間換取時間,按位進行排序,那么每一位的數的位置可能會發生巨大的變化,目前硬件的緩存不是很占優勢,并且當內存比較寶貴的時候,就不要采取這種方式進行排序了。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91网站在线看| 伊人伊成久久人综合网小说| 一区三区二区视频| 欧美极品少妇xxxxⅹ喷水| 日韩一区二区欧美| 久久亚洲国产精品成人av秋霞| 欧美综合在线观看| 欧美在线观看一区二区三区| 日韩少妇与小伙激情| 久久中文字幕视频| 成人激情黄色网| 欧美激情一级欧美精品| 欧美成人合集magnet| 欧美猛少妇色xxxxx| 少妇久久久久久| 亚洲精品一区二区三区不| 久久久精品免费视频| 国产精品视频yy9099| 国产成人精品日本亚洲| 欧美激情国产日韩精品一区18| 日韩精品中文字幕在线播放| 久久久亚洲国产| 午夜精品久久久久久99热软件| 91chinesevideo永久地址| 亚洲毛片一区二区| 最近2019年日本中文免费字幕| 欧美贵妇videos办公室| 日本久久亚洲电影| 久久在线免费视频| 久久久久久久香蕉网| 国产91精品在线播放| 在线性视频日韩欧美| 日韩免费黄色av| 欧美精品久久久久久久| 亚洲图片在区色| 一区二区三区高清国产| 欧美超级免费视 在线| 亚洲精品久久视频| 国外成人在线播放| 欧美激情va永久在线播放| 成人网在线观看| 亚洲精品大尺度| 最近2019年中文视频免费在线观看| 成人高h视频在线| 日韩在线观看高清| 国产一区二区三区免费视频| 亚洲精选在线观看| 欧美xxxx18性欧美| 欧美性xxxxx极品| 不卡中文字幕av| 日韩国产欧美精品一区二区三区| 欧美综合在线第二页| 日韩精品视频在线免费观看| 亚洲成人精品视频在线观看| 欧美日韩免费区域视频在线观看| 国产一区二区三区在线免费观看| 成人久久一区二区三区| 久热精品视频在线免费观看| 欧美性jizz18性欧美| 精品国产福利在线| 欧美日韩国产专区| 一道本无吗dⅴd在线播放一区| 日韩欧美福利视频| 午夜精品www| 国产精品福利网| 亚洲第一二三四五区| 92看片淫黄大片欧美看国产片| 成人免费观看网址| 欧美美最猛性xxxxxx| 日韩av大片在线| 97视频免费看| 精品夜色国产国偷在线| 黄网站色欧美视频| 亚洲天堂第一页| 国产成人精品免高潮在线观看| 中文字幕欧美国内| 精品女同一区二区三区在线播放| 欧美理论电影在线播放| 欧美夜福利tv在线| 国产欧美欧洲在线观看| 国产精品视频26uuu| 国产精品福利在线观看| 永久免费精品影视网站| 色综合91久久精品中文字幕| 国产成人精品在线视频| 97色在线观看免费视频| 欧美亚洲第一页| 91成人在线播放| 黑人狂躁日本妞一区二区三区| 亚洲美女www午夜| 久久香蕉国产线看观看av| 精品亚洲国产视频| 97热精品视频官网| 在线观看日韩视频| 久久久久久免费精品| 色婷婷av一区二区三区久久| 91久久久久久久久久久久久| 国产视频精品在线| 国产一区二区三区直播精品电影| 亚洲欧美一区二区精品久久久| 亚洲第一区第一页| 韩剧1988免费观看全集| 欧美一性一乱一交一视频| 68精品国产免费久久久久久婷婷| 亚洲欧洲成视频免费观看| 91影视免费在线观看| 操日韩av在线电影| 欧美性感美女h网站在线观看免费| 日韩av中文字幕在线免费观看| 精品欧美国产一区二区三区| 色综合久久精品亚洲国产| 热门国产精品亚洲第一区在线| 国产精品久久久久久婷婷天堂| 日韩av在线免费看| 17婷婷久久www| 久久久久久久影视| 91久久国产婷婷一区二区| 亚洲性夜色噜噜噜7777| 欧美午夜精品伦理| 国产日韩欧美在线播放| 国产美女搞久久| 欧美在线视频在线播放完整版免费观看| 欧美日韩中文字幕在线| 久久亚洲电影天堂| 性日韩欧美在线视频| 午夜精品一区二区三区视频免费看| 精品福利视频导航| 亚洲激情视频在线播放| 欧美日韩在线看| 欧美激情影音先锋| 国产成人激情视频| 欧美电影免费观看高清完整| 国产精品青草久久久久福利99| 欧美日韩一区二区免费视频| 欧洲美女免费图片一区| 精品亚洲男同gayvideo网站| 欧美激情亚洲综合一区| 亚洲韩国欧洲国产日产av| 欧美日韩性生活视频| 国产精品r级在线| 欧美极品少妇xxxxⅹ裸体艺术| 亚洲国产天堂久久综合网| 亚洲国产精品嫩草影院久久| 久久久成人精品| 国产欧美日韩精品专区| 亚洲精品成人免费| 亚洲mm色国产网站| 亚洲无限乱码一二三四麻| 57pao国产成人免费| 日韩毛片中文字幕| 亚洲欧美自拍一区| 亚洲新声在线观看| 最近2019中文免费高清视频观看www99| 国产成人亚洲综合青青| 亚洲欧美日韩中文在线| 亚洲毛片在线观看.| 国产日韩专区在线| 国产精品久久久久久网站| 欧美性生活大片免费观看网址| 狠狠久久五月精品中文字幕| 久久久久久久久久久网站| 亚洲一区中文字幕| 欧美精品videosex极品1| 国产主播精品在线|