王小明學STL2

2022-03-12 03:09:36 字數 1166 閱讀 3150

「大叔!你騙我。」王小明找上了大叔,憤憤不平。

「我怎麼騙你了?」大叔正無聊地翻著一本早被翻爛的書。

「你騙我用stl,我去網上查了,很多人都說stl慢!慢的很」

「你是怎麼知道他慢的?」

「你昨天不是教我用vector嗎?我回去用陣列和它比較了一下,發現比陣列插入的速度慢了好多!」

「你是怎麼試驗的?」

「你看,我是這樣寫的。」說著,王小明就在草稿紙上寫起來。

int array1[10000];

int i;

for (i=0; i<10000; i++)

vectorarray2;

for (i=0; i<10000; i++)

「插入的數越多,速度的差別就越明顯!」

這時大叔卻笑了,「你知道vector是怎麼工作的嗎?」

「當然知道啊,它也是個陣列,但是如果插入的資料超出原來的範圍,它就會重新……」小明好像想起點什麼。

「那你覺得浪費的時間都花在**?」

「對了,它總是要重新申請記憶體,還要複製資料!」小明終於領悟到了。

「是的,但是它也不是一味地申請和複製,每次申請也不只是申請都乙個位置,而是申請更多的記憶體,避免總是需要申請。」

「啊,這樣子它還有什麼優勢啊,浪費好多時間啊!」小明不甘心,「我以後再也不用它了。」

「咦,怎麼這麼說。你也可以把它當陣列用,它還更安全呢。你看看下面這種。」

vectorarray(10000);

「這是什麼!難道……」小明看到自己沒用過這方法感到很驚奇。

「沒錯,這種申請方式,就是告訴它,我先把你當做乙個10000長度的陣列來用。」

「這樣它的初始記憶體就有10000了對吧?也就是說,10000之內就不用重新申請了。」

「嗯,是的。而且如果你不小心操作出錯,也是比陣列安全多了。」

「這樣啊……」小明又領悟到了vector的魅力,「那我繼續用它好了!」

「呵呵,對了,你的vector學習的怎樣了?」

「我昨天查了一下,發現他有乙個方法是pop_back。」

大叔想了想,「這樣吧,你知道資料結構裡的棧是什麼東西嗎?」

「棧……」小明摸摸頭,好像老師教過,但是現在怎麼忘了,「誒……我家裡有點事我先回去了,待會再來……」

於是小明又跑回家了,大叔看著他的背景,只能無奈地笑了:-d

王小明學STL5

stl系列 怎麼前面的隊那麼長啊!由於取消在家裡吃晚餐的計畫,小明這會正在樓下大排檔前面排隊。這個大排檔的東西很好吃的,就是人多了點。連媽媽也開始抱怨。既然幹等著也沒用,小明,你看看這個問題。大叔站在小明身後,突然發話了。好啊好啊,又是什麼新東西?你看這隊排的,人們都在隊裡等著,先來的先出去,後來的...

小明學長回學校

description在未來的某一天,小明學長躺在他 平公尺的別墅裡喝著龍井,突然一種莫名其妙的感覺湧上心頭 一晃這麼長的時間過去了,記得當時和隊友在331有時因為想出一道題的好的解法能興奮的喊出來,真想回去再打場比賽。於是小明學長就想約上那些老隊友一起回去看看,但是又不想開車回去,因為他比較喜歡鍛...

作業4 小紅小明學概論

密文 xlxohzhpytkmxbqionlyiyrclkjgff 小紅小明網聊忙,學過概論用得上,協商素數得雙么,最小原根心所向。小紅隨機選個七,小明傳來多個一,維吉尼亞很安全,各位破解細思量。解密 協商素數得雙么,最小原根心所向 中提到了 原根 推測使用了dh演算法,雙么 即 11 11的最小原...