數據結構是計算機中的存儲。組織數據的方式。 通常情況下,精心選擇的數據結構可以帶來,最優效率的算法。 |
Q1:如何在書架上擺放圖書?
我家裏的書都是按照顏色大小擺放的,或者按照小學初中大學,還有亂擺的。哦,正常情況應該是按照圖書館的那種分類形式或者首字母大小寫吧。
受教了,這道題是要質疑題目本身的,它本身提問的不是很科學,沒有告訴我們書架是長得什麼樣子?
當我們提及到數據是怎樣組織的時候,這和數據的規模是有關係的。
方法 | 如何放書 | 如何查找書 |
---|---|---|
隨便放 | 容易 | (規模大的時候)困難,從頭到尾遍歷 |
書名拼音字母順序 | 放書A開頭的之後的書要後挪 | 二分查找(查找範圍縮小一半) |
按分類 | 先定分類再插入書 | 先定類別再二分查找 |
思考:按照分類的方法放書,劃分給每一個類別的空間如何劃分?
我們要分類分多少個合適?
提出這個問題,實際上是想讓大家思考,在考慮大規模數據存儲的時候會遇到什麼問題,以及如何根據功能(也就是關聯的算法,最常見的就是插入、查找、刪除)需要設計存儲方式。
對中等規模、大規模的圖書擺放,你有什麼更好的建議?
在這裏,我的思考是:大規模的圖書擺放設立多級別終端多次查找,每個圖書有一個優先級的標籤,(所在區域,所屬樓層,所屬類別之類的)比如先在門口第一次查找查找某圖書,顯示它在A區,然後來到A區域的查找終端上繼續找尋這本書,它會指引你來到相應的樓層,然後在樓層的專屬終端上再按照這節課講的方法來查找。反正人總是要走動的,那麼我們在尋找書的這一路徑上一步一步引導,應該沒有什麼毛病吧?哈哈哈,歡迎各路槓精,小白,大神評論區指教
Q2:寫程序實現一個函數PrintN,使得輸入一個正整數N後,能順序打印從1到N的所有正整數。
第一感覺,我也想用FOR LOOP,
void PrintN(int N){
int i;
for (i = 1;i++;i<N)
Printf("%d\n",N);}
return;
}
但是老師又給了另外一種遞歸的方法,嗯,一直都沒有注意過。
void PrintN(int N){
if(N){
PrintN(N-1);
Printf("%d\n",N);
}
return;
}
遞歸的程序對空間的佔用很恐怖,解決問題方法的效率與空間的利用效率是有關的。
曬一下PrintN在你的機器上運行的結果? |
#include <iostream>
#include <time.h>
void PrintN_loop(int N){
int i;
for (i = 1;i++;i<N){
std::cout<<i<<std::endl;
}
return;
}
void PrintN_recursion(int N){
if(N){
PrintN_recursion(N-1);
std::cout<<N<<std::endl;
}
return;
}
int main()
{
int N=100;
clock_t t1 = clock();
PrintN_loop(N);
clock_t t2 = clock();
std::cout<<"time: "<<t2-t1<<std::endl;
}
在終端中運行
g++ -o testcpp test.cpp
沒有編譯問題則會生成可執行文件。
./testcpp
啊啊啊,爲什麼結果是那麼的奇怪?掌握一下C++和time.h的用法回頭重新算。
C++ time.h 庫詳解
clock( )
捕捉程序從開始到目前的時鐘打點,
Q3:求解給定多項式在x點處的值。
直接FOR LOOP逐個項計算不如我們先用結合率來試試
線性結構,樹,圖,邏輯結構
數組,鏈表,物理存儲結構
抽象數據類型到底是什麼東西?
抽象兩個字代表我們並不關心它的值具體是什麼,描述操作集時也不會考慮具體的實現方法。
抽象有什麼好處? |
今日寫文背景音樂《只只》,段老狗加油!!!
別的小孩有的 我們只只也要有 |
雨下過後的屋檐,貓坐在路邊,
你吹着風,不說話就很甜。
微光裏樹影重疊,驟雨間溼冷麻雀,
我杜撰許多離別,勇敢而堅決!
十月過後的天空,醉酒般暈紅,
一半是春夏,一半是秋冬。
光影飄浮過山峯,留下關於你的夢,
我在這寫下重逢,貧乏而心動!
想和你看着星空,只談夜色與微風,
不關心明天,不在乎所有,
只對你有獨鍾。
是時候和你決定,即便匆忙去遠行,
在山野間追風,去看遍世界,
黃昏與黎明。
路過轉角的花店,你坐在窗前,
我騎着單車,載着你走很遠。
星光透映着長街,無意間夜色傾斜。
在紙上寫下一頁,深沉而濃烈!
想和你看着星空,只談夜色與微風,
不關心明天,不在乎所有,
只對你有獨鍾。
是時候和你決定,即便匆忙去遠行,
在山野間追風,去看遍世界,
黃昏與黎明.
任時間過往匆匆,輕易就遠去無聲,
在人潮之中,想要擁抱你,哪怕片刻永恆,
我已經偷偷決定,把愛你的事澄清,
在百念之中,你依然是我,未尋得的舊夢。
十月過後的天空,光影在流動。
一半是春夏,一半是秋冬。