程式設計珠璣第一章第一題的解法,常用的排序

2021-07-16 13:04:17 字數 934 閱讀 5753

程式設計珠璣第一章習題

第一題

如果不缺記憶體,如何使用乙個庫的語言實現一種排序演算法以表示和排序集合

解法一 使用c++的sort

#include 

#include

using

namespace

std;

template

int getarrlength( t& arr)

template

int getchararrlength(t& arr)

template

void printarr(t& arr)

cout

int main() ;

// printarr(arr);

// sort(arr,arr+getarrlength(arr),cmp);

// printarr(arr);

}

解法二 使用c語言的qsort

#include 

#include

int intcomp(int

*x, int

*y)

int a[1000000];

int main()

解法三 使用set庫

#include 

#include

using

namespace

std;

int main()

解法四 使用vector庫

可以看看這位的了解一下如何使用

blog.csdn.net/hnu_zxc/article/details/6746029

程式設計珠璣第一章

原文中的問題 如何在1mb的空間裡面對一千萬個整數進行排序?並且每個數都小於1千萬。實際上這個需要1.25mb的記憶體空間。1mb總共有838,8608。所以估計也可以在1mb左右的空間裡面進行排序了。include include define bitsperword 32 define shif...

程式設計珠璣第一章

下午看完程式設計珠璣第一章,感覺很不錯!如作者所說 閱讀本書乙個提示,不要太快,一次閱讀一章。集中精力思考,解答課後習題。寫總結就是在剛弄懂的時候,這時候是最恰當的時候,最容易接受。題目要求 乙個最多含有1000萬個整數的檔案,整數沒有重複,請輸出公升序排列。約束 最多1m記憶體,時間10s。題目很...

《程式設計珠璣》第一章筆記

文章從乙個實際的問題開始 乙個 系統,7位數的 號碼,用1mb的記憶體空間將這些 號碼排序。分析 如果將這些 號碼看成int型別的整數,將其讀入記憶體中進行排序,int型別4個位元組,最多有10000000個 號碼,則需要40mb的記憶體空間,遠遠超出題目的要求,但是這10000000個資料有他們的...