-
如果是學校問題,可以通過冒泡來排序。
雖然效率不是很高,但這種演算法占用的記憶體量最少。
首先,假設你的資料不是太大,比如一條記錄占用了10個位元組,500萬就是50MB。
對於今天的計算機來說,它仍然是負擔得起的。
如果它是乙個真正的專案,那麼以這種方式排序對你來說是沒有意義的。
標準做法是將需要查詢的資料部分插入到資料庫中。
然後使用資料庫的查詢功能進行操作。
排序演算法很多,需要很多更詳細的資訊來確定哪種演算法更有利。
下面的鏈結有各種演算法的優缺點比較和示例。
原始鏈結不起作用)。
-
快速排序演算法易於使用並分組處理。
-
500w,顯然無法一次讀入記憶體。
因此,正如您提到的,內部排序演算法(例如氣泡排序)是無效的。
讓我們看一下外部排序。
-
師傅寫了乙個例子,他寫的是500w的資料測試。
把它扔到資料庫裡,500w對資料庫來說不算多。
-
從表名稱中選擇 ID,其中欄位按數量順序排列
select id from new where pl order by num desc
連線到VB資料庫的具體方法很容易在網際網絡上找到。 我說這是乙個通用的SQL查詢語言歷史僕人肢體差句。 這也是你問題的重點。 如果還有什麼不明白的地方,可以給我留言。
-
選擇所有要排序的資料,單擊“排序”,選擇主關鍵字的第一行編號,然後按確定排序。
-
將滑鼠放在列標籤上,從左向右水平拖動,然後點選排列,電腦預設按第一列排序。
-
橙子33毫克,維生素C 100克
士多啤梨 47mg 維生素C 100g
獼猴桃 62mg,維生素C 100g
番石榴 68mg 維生素C 100g
紅棗900mg,維生素C 100g
Annona 265毫克,維生素C 100克
木瓜43毫克,維生素C 100克
efdcbga
辣椒 144mg,維生素C 100g
-
這種話題有意義嗎,辣椒不在其中。
-
#include
#include
int comp(const void *a,const void *b)
int main(void)
fclose(fp);
qsort(a,n,sizeof(int),comp);
fp=fopen("c:\\sort_","w");資料檔案已排序,可在此處修改
for (in = 0; infclose(fp);
return 0;
-
貼上文字檔案的內容。
否則,將影響程式。
-
1. 我根本沒有學過C語言,所以我會談談我的想法。
以你為例。
每行不足以彌補 0,直到長度相同,即。
然後從最後一列開始排序,完成後再對下一列進行排序。
第四列排序:
第三列按順序排序:
第二列排序:
第一列排序:
我還沒有學過資料結構和演算法,所以演算法可能有點低效,但它們相對簡單易懂。
-
快速程式設計,呵呵:
#include
#include
#include
#include
using namespace std;
bool greater_vector( const vector< int > left, const vector< int > right )
return >
void main()
if ( v );
fclose( fp );
然後排序。
sort( ,greater_vector );
最終輸出。
for( size_t i = 0; i < i++
-
do……while 迴圈的條件是,只要 while 後面的語句的值為 true,它就會繼續執行,直到該值變為 false。 因此,這個問題的while(n=max”
1.計數排序稱為 countingsort,而不是 choicesort
2.void choicesort( int a,int n )n 表示陣列元素的數量,而 while( k < n )k 表示元素下標,下標與元素數量相比不正確,應改為 while(k < n - 1)。 >>>More
快速排序。
int partition(int elem arr,int i,int j) 實現一分為二,以 pivot key 作為透視變數。 >>>More