版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
STL庫介紹與練習(xí)STL庫介紹與練習(xí)STL庫介紹與練習(xí)STL庫介紹與練習(xí)標準模板庫(英文:StandardTemplateLibrary,縮寫:STL),是一個C++軟件庫,也是C++標準程序庫的一部分。模板是C++程序設(shè)計語言的一個比較新的重要特征,而標準模板庫正是基于此特征。標準模板庫使得C++編程語言在有了同Java一樣強大的類庫的同時,保有了更大的可擴展性。什么是STL初中化學(xué)教學(xué)生活化,將一些知識點和學(xué)生的生活實際結(jié)合起來,有利于提高學(xué)生學(xué)習(xí)的興趣,也有利于提高學(xué)生學(xué)習(xí)的主動性、積極性、自覺性,還有利于學(xué)生對知識點的掌握.初中化學(xué)教學(xué)生活化,教師結(jié)合教學(xué)內(nèi)容與生活實際提出問題,促使學(xué)生思考,將學(xué)生由原來的配角變成主角,有利于加深學(xué)生對知識的記憶,使學(xué)生形成樂于動腦的習(xí)慣.一、初中化學(xué)教學(xué)生活化現(xiàn)狀調(diào)查1.調(diào)查概況.調(diào)查對象:九年級學(xué)生及部分教師.調(diào)查目的:掌握學(xué)生的基本情況,為研究教學(xué)生活化準備真實的數(shù)據(jù)依據(jù).調(diào)查方式與選題目的:為了方便統(tǒng)計,將問卷分成兩份.一份是為學(xué)生準備的,統(tǒng)計學(xué)生上課的基本情況.另一份是為教師準備的,調(diào)查教師對教學(xué)生活化的理解和態(tài)度.調(diào)查設(shè)計方案:(學(xué)生問卷)為了方便學(xué)生答題,全部是選擇題.其中第1~9題是關(guān)于初中生對化學(xué)的喜愛程度及其原因;第10~18題是關(guān)于學(xué)生對周圍環(huán)境的了解程度及平時參加活動的狀況;第19~34題是關(guān)于學(xué)生學(xué)習(xí)的基本情況;第35~42題是關(guān)于研究影響學(xué)生的因素.(教師問卷)主要是調(diào)查教師對教學(xué)生活化的理解.2.調(diào)查結(jié)果及其數(shù)據(jù)分析.在對化學(xué)學(xué)習(xí)的目的中,大部分學(xué)生傾向于考試.其中66%的學(xué)生把學(xué)習(xí)化學(xué)的目的歸結(jié)于升學(xué)的需要;85.5%的父母同樣關(guān)心的是學(xué)生學(xué)習(xí)的成績;53.5%的學(xué)生將考試無關(guān)的問題放棄;44.7%的學(xué)生在遇到疑難問題時選擇問老師.這說明了一個問題,學(xué)生是為了學(xué)習(xí)而學(xué)習(xí),只是為了應(yīng)付老師,應(yīng)付父母,應(yīng)付考試.學(xué)生對學(xué)習(xí)化學(xué)沒有一種渴望的興趣,缺乏主動性.在對學(xué)習(xí)化學(xué)的興趣中,研究顯示初中生還是有一定的興趣的.40.3%的學(xué)生表示對于學(xué)習(xí)化學(xué)有一定的興趣;32.1%的學(xué)生表示興趣不大;41.5%的學(xué)生表示化學(xué)的知識點或者實驗只有在有趣時才會引起他們的注意力;只有52.8%的學(xué)生表示對于自己感興趣的問題自己會去研究;67.9%的學(xué)生表示對化學(xué)的興趣來自于老師.這表示學(xué)生是否喜歡化學(xué),與教師有著很大的關(guān)系.在對外界感知的程度中,結(jié)果顯示學(xué)生對周圍的一切不是很了解.只有15.7%的學(xué)生了解很多城市淡水資源缺乏;60.4%的學(xué)生知道自然資源十分有限;80.5%的學(xué)生對于外界的好奇心很低;64.8%的學(xué)生對科學(xué)技術(shù)的發(fā)展狀況不關(guān)注.3.調(diào)查結(jié)論及啟示.首先,初中生在實驗?zāi)芰Ψ矫嫒鄙?C會去進行多次的實驗活動.雖然大部分學(xué)生喜歡進行動手實驗.教師調(diào)查顯示學(xué)生在這一個方面缺乏自主設(shè)計實驗的意識,也缺乏實驗方面的必要知識.其次,在解釋化學(xué)理論問題與得到結(jié)論的過程中,需要得到教師的指導(dǎo)和幫助.主要是因為在傳統(tǒng)的教學(xué)過程中更加偏重理論教育,缺乏理論與現(xiàn)實的聯(lián)系.最后,對于與化學(xué)有關(guān)的現(xiàn)象提出猜想的能力方面表現(xiàn)不足,即使提出了假設(shè)和問題,在辨證的時候也說不出有力的證據(jù),需要教師進行有力的引導(dǎo),才能自圓其說.二、實踐策略――利用教學(xué)資源體現(xiàn)生活化1.充分利用校內(nèi)資源.校內(nèi)教學(xué)資源包括校內(nèi)的各種場所和設(shè)施,如圖書館、實驗室、專用教室、信息中心等;校內(nèi)人文資源,如教師群體、師生關(guān)系、班級組織、學(xué)生團體等.校內(nèi)資源是實現(xiàn)教學(xué)目的,促進學(xué)生全面發(fā)展的最基本、最便利的資源,教師應(yīng)該充分利用起來.2.重視利用校外資源.校外資源豐富多彩,有社會提供的科普教育資源,如書店可利用的科學(xué)教育資源等;有可以作為科學(xué)教育的簡介社會資源,如化工廠、污水處理廠、農(nóng)場等.為了更好地利用這些資源,教師應(yīng)該積極開展利用這些資源的各種探究活動,將它們與教學(xué)內(nèi)容相結(jié)合.3.營造和諧融洽的教學(xué)氛圍.在教學(xué)過程中,人際關(guān)系也是一種教學(xué)資源.這種人際關(guān)系主要是指教師與教育管理者、教師之間、師生之間以及學(xué)生之間的相互合作與情感交流.這種相互合作與情感交流,可以營造一種和諧融洽的教學(xué)氛圍.在這種教學(xué)環(huán)境中,才能順利開展教學(xué)研究工作.4.借助現(xiàn)代教育技術(shù)手段.現(xiàn)代教育技術(shù)手段有其獨特的技術(shù)優(yōu)勢.在初中化學(xué)教學(xué)中,對于微觀的或抽象的知識,如物質(zhì)的微觀結(jié)構(gòu),原子和分子等微觀粒子的運動等內(nèi)容,只靠文字解釋很難讓學(xué)生理解,而借助現(xiàn)代教育技術(shù)手段,設(shè)計、編制成質(zhì)量較高的化學(xué)課件,把抽象的知識具體化,有利于學(xué)生深刻理解化學(xué)知識.總之,化學(xué)是一門與生活息息相關(guān)的學(xué)科,生活中的化學(xué)知識是啟蒙教育的重要因素,教師要將它們與課本知識結(jié)合起來,使學(xué)生感受到課本知識學(xué)習(xí)的意義和作用,并意識到學(xué)習(xí)的價值和責任,增強學(xué)生學(xué)習(xí)化學(xué)的興趣和動機,從而提高教學(xué)效果.聽、說、讀、寫是英語學(xué)習(xí)者應(yīng)掌握的四項基本技能,在過去由于受傳統(tǒng)的應(yīng)試教育的影響,再加上高考指揮棒的指引,中學(xué)英語教學(xué)中普遍存在重“讀寫”技能而輕“聽說”的現(xiàn)象。調(diào)查中我們著重考察了一些學(xué)校的師資情況,教輔設(shè)備配置情況以及受這二者影響和制約的學(xué)生情況,調(diào)查結(jié)果如下。一、師資情況教師作為教學(xué)活動的組織者和主體之一,在整個教學(xué)活動中起著十分重要的作用。教師素質(zhì)如何,直接影響著教學(xué)質(zhì)量,因此我們此次調(diào)查的重點就是師資情況,我們共對我市的五所農(nóng)村中學(xué)進行了調(diào)查,調(diào)查結(jié)果如下表1。從以上表格中我們可以清楚地看到農(nóng)村中學(xué)英語教師的整體情況有以下幾個特點:1.學(xué)歷不符合或不完全符合國家教委要求。2.部分教師在教學(xué)中沒能及時轉(zhuǎn)變角色,仍以自我為中心。3.教學(xué)語言多用母語。二、教輔人員的配置和使用情況課堂教學(xué)過程是信息的傳遞過程,教學(xué)媒體是這一過程中老師與學(xué)生之間的媒介,用于傳授知識和培養(yǎng)學(xué)生的能力。教學(xué)媒介主要分傳統(tǒng)媒介(指教科書、黑板、掛圖與實物等)和現(xiàn)代教學(xué)媒介(包括幻燈機、投影機、錄象機、語言試驗室及計算機等)。隨著社會的發(fā)展,科技的不斷更新,教學(xué)手段也日趨多樣化。由于現(xiàn)代教學(xué)媒體有利于創(chuàng)造良好的語言交際環(huán)境,可加深學(xué)生對語言知識的理解,減少教學(xué)難度,有利于提高教學(xué)效率,擴大新知識量和有利于調(diào)動學(xué)生學(xué)習(xí)積極性等優(yōu)點,越來越受到廣大師生的喜愛,并且在現(xiàn)代教學(xué)中也發(fā)揮著越來越重要的作用。三、學(xué)生情況作為教學(xué)活動主體之一的學(xué)生情況受教師素質(zhì)和教學(xué)手段的影響很大,但同時學(xué)生狀況反過來對教師的教學(xué)活動產(chǎn)生影響和制約,教師無論采取哪一種教法都不能脫離學(xué)生實際情況,否則再好的教法也不可能發(fā)揮其應(yīng)有作用而產(chǎn)生好的教學(xué)效果。調(diào)查中我們發(fā)現(xiàn)農(nóng)村中學(xué)的學(xué)生在聽力方面有以下一些特點。1.學(xué)生基本功不扎實,存在很多影響其聽力理解的不利因素,如語言知識不足,反應(yīng)速度慢,背景知識缺乏等。而其中語言不足對學(xué)生影響最大,因為語言知識的高低決定了聽力理解能力的強弱及反應(yīng)速度的快慢,語言知識的障礙具體表現(xiàn)在語音障礙、語速障礙、詞匯、語法障礙,而這三者中又以前者表現(xiàn)最為突出。大多數(shù)學(xué)生的發(fā)音不夠準確,而其中尤以重音及雙元音出錯為多。2.學(xué)生對英語聽力重視程度不夠。我們曾向200名接受調(diào)查的學(xué)生發(fā)放了一份調(diào)查表,內(nèi)容涉及對英語聽力訓(xùn)練所投入的時間,以及對英語聽力訓(xùn)練的看法。在回收的183份有效表格中只有48位同學(xué)回答經(jīng)常訓(xùn)練,有72位同學(xué)認為進行聽力訓(xùn)練完全是浪費時間,還不如將時間用到其它方面或許還可以提高點分數(shù);還有一部分同學(xué)認為聽力訓(xùn)練短時間不出成績;或者認為找不出合適的訓(xùn)練方法,因此很少訓(xùn)練。3.學(xué)生對英語聽力在認識上存在錯誤,缺乏必要的聽力技巧,在聽的過程中很多學(xué)生并不是立足于聽懂文章的意思,而是想把每一個單詞每一個句子都聽明白,結(jié)果導(dǎo)致抓不住聽文章的重點,連文章的基本意思也沒能聽明白。4.影響農(nóng)村學(xué)生聽力還有一個非常關(guān)鍵的因素,那就是學(xué)生的心理障礙。聽力理解過程是一個非常復(fù)雜的心理活動過程。心理學(xué)告訴我們當人們的情緒處于緊張焦慮的狀態(tài)時,就易產(chǎn)生恐懼心理。部分學(xué)生一遇到不理解的單詞或句子就煩躁不安,有些學(xué)生甚至在還沒有聽之前就有畏難情緒,這就在無形中設(shè)置了信息輸入的屏障,降低了信息加工的有效性,從而影響了對聽力材料的理解程度。四、提高農(nóng)村中學(xué)英語聽力教學(xué)應(yīng)采取的對策分析對以上農(nóng)村中學(xué)存在的種種問題,我們認為制約農(nóng)村中學(xué)英語聽力教學(xué)的關(guān)鍵是英語教師的素質(zhì)。要從根本上解決農(nóng)村中學(xué)英語聽力教學(xué)中存在的問題,首要問題是全面提高農(nóng)村中學(xué)英語教師的素質(zhì)。1.要全面提高農(nóng)村中學(xué)英語教師的素質(zhì)有很多途徑,比如可以通過補充新的高素質(zhì)的英語教師來充實農(nóng)村中學(xué)的英語教學(xué)。但是最切實可行的辦法我們認為還是對廣大農(nóng)村中學(xué)英語教師進行崗位培訓(xùn),崗位培訓(xùn)的方法有多種,如外出聽課、學(xué)習(xí),參與教研員組織的集體備課、研討等。2.應(yīng)當大力加強有關(guān)聽力教學(xué)教法,特別是針對農(nóng)村中學(xué)實際情況的英語聽力教學(xué)教法的研究。由于某種原因,現(xiàn)對英語聽力教學(xué)教法的研究還很少進行,而針對農(nóng)村中學(xué)現(xiàn)狀的聽力教學(xué)教法的研究還幾乎處于空白狀態(tài),這對于搞好農(nóng)村中學(xué)英語聽力教學(xué)和提高農(nóng)村中學(xué)英語教師素質(zhì)都是很不利的。五、農(nóng)村中學(xué)英語聽力教學(xué)教法應(yīng)注意的原則1.要有趣味性。興趣是最好的老師,只有能夠引起學(xué)生的興趣,調(diào)動學(xué)生的學(xué)習(xí)積極性,才能產(chǎn)生良好的教學(xué)效果。2.要循序漸進,堅持不懈。農(nóng)村中學(xué)聽力教學(xué)要從基礎(chǔ)抓起,不能脫離學(xué)生實際,提出過高標準和要求,影響學(xué)生興趣的培養(yǎng)。另外,也不能把聽力訓(xùn)練放在臨近考試前幾周突擊。所謂“冰凍三尺非一日之寒”這句話也適用于聽力。由于連讀、失去爆破、弱讀、重音移動等語音現(xiàn)象引起的困難;由于不熟悉英美的習(xí)慣、風土人情文化特征和興趣愛好等,所聽材料雖無生詞,但卻聽不懂內(nèi)容,造成理解的困難;由于中學(xué)生聽時過分緊張,本來可以聽懂的也聽不懂了,過分注意每一個音,每一個節(jié),每一個詞,而引起聽力心理障礙。中國學(xué)生聽英語本身就存在這些困難,所以更不應(yīng)該平時置聽力于不顧,應(yīng)該堅持不懈地訓(xùn)練聽力。3.要有可操作性。即要適應(yīng)農(nóng)村中學(xué)師資及教輔設(shè)備配置情況,這些教法對老師素質(zhì)要求不能過高,老師只需簡單的英語表達和簡單的設(shè)備即組織起課堂教學(xué)活動。4.要用科學(xué)的方法進行聽力訓(xùn)練如何進行聽力訓(xùn)練呢?我們認為如下。(1)教師應(yīng)該盡可能多地運用課堂用語,用英語組織教學(xué),積極創(chuàng)設(shè)語言環(huán)境。(2)采取分散與集中相結(jié)合。(3)在進行聽力訓(xùn)練時,最重要的是教給學(xué)生方法。下面介紹幾種適用于農(nóng)村中學(xué)的聽力教法。一是適應(yīng)于課堂內(nèi)的。完全身體反應(yīng);描述和猜測;分類;講故事;畫具游戲;實物游戲;假設(shè)情景對話、旅游游戲;組織學(xué)校英語教學(xué)條件有限,辯音、聽音訓(xùn)練難于在聽音室進行,教師充分利用早讀時間,將學(xué)生組織成4人的語音訓(xùn)練小組。二是英語課外活動。英語會話小組;英語晚會;英語聽說興趣組;英語角。以上只是提出了幾種適用于農(nóng)村中學(xué)課堂內(nèi)外的聽力訓(xùn)練的方法,謹供同仁們參考。STL庫介紹與練習(xí)標準模板庫(英文:StandardTemplateLibrary,縮寫:STL),是一個C++軟件庫,也是C++標準程序庫的一部分。模板是C++程序設(shè)計語言的一個比較新的重要特征,而標準模板庫正是基于此特征。標準模板庫使得C++編程語言在有了同Java一樣強大的類庫的同時,保有了更大的可擴展性。什么是STLSTL是C++的ANSI/ISO標準的一部分,可以用于所有C++語言編譯器和所有平臺(Windows/Unix/Linux..)。STL的同一版本在任意硬件配置下都是可用的;STL提供了大量的可復(fù)用軟件組織。例如,程序員再也不用自己設(shè)計排序,搜索算法了,這些都已經(jīng)是STL的一部分了。嘎嘎,有意思吧。使用STL的應(yīng)用程序保證了得到的實現(xiàn)在處理速度和內(nèi)存利用方面都是高效的,因為STL設(shè)計者們已經(jīng)為我們考慮好了。使用STL編寫的代碼更容易修改和閱讀,這是當然的啦。因為代碼更短了,很多基礎(chǔ)工作代碼已經(jīng)被組件化了;使用簡單,雖然內(nèi)部實現(xiàn)很復(fù)雜。雖然,STL的優(yōu)點甚多,但是STL的語法實在令初學(xué)者人頭疼,許多人望而卻步??墒荢TL是每個C++程序設(shè)計者遲早都要啃的一塊骨頭。為什么要使用STL容器:可容納各種數(shù)據(jù)類型的數(shù)據(jù)結(jié)構(gòu)。迭代器:可依次存取容器中元素的東西算法:用來操作容器中的元素的函數(shù)模板。例如,STL用sort()來對一個vector中的數(shù)據(jù)進行排序,用find()來搜索一個list中的對象。函數(shù)本身與他們操作的數(shù)據(jù)的結(jié)構(gòu)和類型無關(guān),因此他們可以在從簡單數(shù)組到高度復(fù)雜容器的任何數(shù)據(jù)結(jié)構(gòu)上使用。比如,數(shù)組intarray[100]就是個容器,而int*類型的指針變量就可以作為迭代器,可以為這個容器編寫一個排序的算法STL的組成可以用于存放各種類型的數(shù)據(jù)(基本類型的變量,對象等)的數(shù)據(jù)結(jié)構(gòu)。容器分為三大類:1)順序容器
vector:后部插入/刪除,直接訪問
deque:前/后部插入/刪除,直接訪問
list:雙向鏈表,任意位置插入/刪除
2)關(guān)聯(lián)容器
set:快速查找,無重復(fù)元素
multiset:快速查找,可有重復(fù)元素
map:一對一映射,無重復(fù)元素,基于關(guān)鍵字查找
multimap:一對一映射,可有重復(fù)元素,基于關(guān)鍵字查找前2者合稱為第一類容器3)容器適配器
stack:LIFO
queue:FIFO
priority_queue:優(yōu)先級高的元素先出容器概述對象被插入容器中時,被插入的是對象的一個復(fù)制品。許多算法,比如排序,查找,要求對容器中的元素進行比較,所以,放入容器的對象所屬的類,還應(yīng)該實現(xiàn)==和<
運算符。容器概述常用舉例minmaxswap的使用sort的使用vector的使用map的使用set的使用stack的使用queue的使用priority_queue的使用#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;intmain(){ inta=2,b=3; printf("%d%d\n",max(a,b),min(a,b)); swap(a,b); printf("%d%d\n",a,b); system("pause");}結(jié)果輸出:
32 32minmaxswap的使用對數(shù)組使用sort排序,輸入85169#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;intmain(){ inta[5]; for(inti=0;i<5;++i)scanf("%d",&a[i]); sort(a,a+5); for(inti=0;i<5;++i)printf("%d",a[i]); system("pause");}結(jié)果輸出:
15689sort的使用二級排序,坐標排序,輸入(2,3)(4,2)(1,7)(2,4)優(yōu)先按x小的排序,x一樣按y小的排序structnode{ intx,y;}p[4];boolcmp(nodea,nodeb){ if(a.x==b.x)returna.y<b.y; returna.x<b.x;}sort的使用sort的使用intmain(){ for(inti=0;i<4;++i)scanf("%d%d",&p[i].x,&p[i].y); sort(p,p+4,cmp); for(inti=0;i<4;++i)printf("%d%d\n",p[i].x,p[i].y); system("pause");}結(jié)果輸出:
17 23 24 42Inta[]={1,2,4,6};next_permutation(a,a+4)prev_permutation(a,a+4)sort(a,a+4)reverse(a,a+4)lower_bound返回大于等于指定元素的位置upper_bound返回大于指定元素的位置Inta[]={1,2,4,6};Intind=Lower_bound(a,a+4,4)-a;其它常見算法相當于數(shù)組,常用的添加、刪除、清空、測長操作#include<iostream>#include<cstdio>#include<cstring>#include<vector>usingnamespacestd;intmain(){ vector<int>a;
for(inti=0;i<5;++i){ a.push_back(i);//把元素i按順序放到a里
} for(inti=0;i<a.size();++i)//a.size()測量a的元素個數(shù)
printf("%d",a[i]);vector的使用 puts(""); //vector容器指針指向第一個元素
vector<int>::iteratorit=a.begin();
a.erase(it+2);//刪除第三個
for(inti=0;i<a.size();++i) printf("%d",a[i]); system("pause");}結(jié)果輸出:
01234 0134vector的使用對雜亂無序的字符串或數(shù)字做哈希匹配,可以重新編號,輸入一些英文名字,給他們編號#include<iostream>#include<cstdio>#include<string>#include<map>usingnamespacestd;intmain(){ map<string,int>mp;
stringnm[]={"abc","david","lucy","abc","app","lucy"}; intindex=1; for(inti=0;i<6;++i){ if(mp[nm[i]]==0)mp[nm[i]]=index++; //判斷是否已經(jīng)出現(xiàn)過,沒出現(xiàn)過,就編號
}map的使用 map<string,int>::iteratorit;//map容器的指針
for(it=mp.begin();it!=mp.end();++it){ cout<<it->first<<""<<it->second<<endl; //按字典序輸出每個的編號
} system("pause");}結(jié)果輸出:
abc1 app4 david2 lucy3map的使用set可以插入很多值,去掉重復(fù)元素,并可以查找#include<iostream>#include<cstdio>#include<string>#include<set>usingnamespacestd;intmain(){ set<string>st; stringnm[]={"abc","david","lucy","abc","app","lucy"}; for(inti=0;i<6;++i)st.insert(nm[i]);//st里插入元素
set<string>::iteratorit;//set容器的指針
for(it=st.begin();it!=st.end();++it){ cout<<*it<<endl;//按字典序輸出
} it=st.find("app"); if(it!=st.end())cout<<"find"<<""<<"app"<<endl; elsecout<<"can'tfind"<<""<<"app"<<endl;set的使用 //找到了就輸出find,找不到就輸出can'tfind it=st.find("bld"); if(it!=st.end())cout<<"find"<<""<<"bld"<<endl; elsecout<<"can'tfind"<<""<<"bld"<<endl; for(set<string>::iteratorit=st.lower_bound("dad");it!=st.end();++it){ cout<<*it<<''; } cout<<endl;}結(jié)果輸出:abcappdavidlucyfindappcan'tfindblddavidlucyset的使用stack幾個主要函數(shù):empty()堆棧為空則返回真pop()移除棧頂元素(不會返回棧頂元素的值)push()在棧頂增加size()返回棧中元素數(shù)目top()返回棧頂元素stack的使用例子:#include<iostream>#include<cstdio>#include<cstring>#include<stack>usingnamespacestd;intmain(){inta[]={1,3,5,7,9,11};stack<int>st;inti;if(st.empty()){for(i=0;i<3;++i)st.push(a[i]);}stack的使用stack的使用for(inti=0;i<2;++i){printf("%d",st());st.pop();}printf("\n");for(inti=3;i<6;++i)st.push(a[i]);printf("Thesizeofstackis%d\n",st.size());intn=st.size();for(inti=0;i<n;++i){printf("%d",st());st.pop();}printf("\n");system("pause");}輸出結(jié)果:53Thesizeofstackis411971請按任意鍵繼續(xù)...queue幾個主要函數(shù):empty()隊列為空則返回真pop()移除隊首元素push()在隊尾增加元素size()返回隊列元素數(shù)目front()返回隊首元素back()返回隊尾元素queue的使用例子:#include<iostream>#include<cstdio>#include<cstring>#include<queue>usingnamespacestd;intmain(){inta[]={1,3,5,7,9,11};queue<int>qu;inti;if(qu.empty()){for(i=0;i<3;++i)qu.push(a[i]);}queue的使用printf("Frontis%dandBackis%d\n",qu.front(),qu.back());for(inti=0;i<2;++i){qu.pop();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());}for(inti=3;i<6;++i)qu.push(a[i]);printf("Thesizeofqueueis%d\n",qu.size());intn=qu.size();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());for(inti=0;i<n-1;++i){qu.pop();printf("Frontis%dandBackis%d\n",qu.front(),qu.back());}system("pause");}queue的使用輸出結(jié)果:Frontis1andBackis5Frontis3andBackis5Frontis5andBackis5Thesizeofqueueis4Frontis5andBackis11Frontis7andBackis11Frontis9andBackis11Frontis11andBackis11請按任意鍵繼續(xù)...queue的使用stack和queue用法很相似不過原理不一樣,前者是先進后出,后者是先進先出stack和queue的類型除了int,double,float等外,也可以也struct形式比如:structnode{intx,y;}a[6];
queue<node>qu;stack簡介準容器類說明順序性容器vector從后面快速的插入與刪除,直接訪問任何元素deque從前面或后面快速的插入與刪除,直接訪問任何元素list雙鏈表,從任何地方快速插入與刪除關(guān)聯(lián)容器set快速查找,不允許重復(fù)值multiset快速查找,允許重復(fù)值map一對多映射,基于關(guān)鍵字快速查找,不允許重復(fù)值multimap一對多映射,基于關(guān)鍵字快速查找,允許重復(fù)值容器適配器stack后進先出queue先進先出priority_queue最高優(yōu)先級元素總是第一個出列STL標準容器類簡介
默認構(gòu)造函數(shù)提供容器默認初始化的構(gòu)造函數(shù)。復(fù)制構(gòu)造函數(shù)將容器初始化為現(xiàn)有同類容器副本的構(gòu)造函數(shù)析構(gòu)函數(shù)不再需要容器時進行內(nèi)存整理的析構(gòu)函數(shù)empty容器中沒有元素時返回true,否則返回falsemax_size返回容器中最大元素個數(shù)size返回容器中當前元素個數(shù)operator=將一個容器賦給另一個容器operator<如果第一個容器小于第二個容器,返回true,否則返回false,operator<=如果第一個容器小于或等于第二個容器,返回true,否則返回falseoperator>如果第一個容器大于第二個容器,返回true,否則返回falseoperator>=如果第一個容器大于或等于第二個容器,返回true,否則返回falseoperator==如果第一個容器等于第二個容器,返回true,否則返回falseoperator!=如果第一個容器不等于第二個容器,返回true,否則返回falseswap交換兩個容器的元素所有標準庫共有函數(shù)begin該函數(shù)兩個版本返回iterator或const_iterator,引用容器第一個元素end該函數(shù)兩個版本返回iterator或const_iterator,引用容器最后一個元素后面一位rbegin該函數(shù)兩個版本返回reverse_iterator或const_reverse_iterator,引用容器最后一個元素rend該函數(shù)兩個版本返回reverse_iterator或const_reverse_iterator,引用容器第一個元素前面一位erase從容器中清除一個或幾個元素clear清除容器中所有元素insert插入元素Size(),empty(),max_size()關(guān)于容器大小的操作順序容器和關(guān)聯(lián)容器共有函數(shù)#include<iomanip>#include<iostream>#include<queue>usingnamespacestd;#defineout(x)(std::cerr<<std::boolalpha<<"Line"<<__LINE__<<":"<<#x<<":"<<(x)<<std::endl)intmain(){ priority_queue<int>q; q.push(3); q.push(2); out(q()); out(q()); out(q.size());}輸出結(jié)果:Line12:q():3Line13:q():3Line14:q.size():2priority_queue31structpoint{ intx,y; point(intxx,intyy):x(xx),y(yy){}};booloperator<(constpoint&a,constpoint&b){ returna.x<b.x||a.x==b.x&&a.y<b.y;}ostream&operator<<(ostream&out,constpoint&p){ returnout<<"("<<p.x<<','<<p.y<<')';}intmain(intargc,char**argv){ pointa(1,2),b(1,3); cout<<boolalpha<<(a<b)<<endl; cout<<a<<endl; cout<<b<<endl;}運算符重載大家做一下POJ2442#include<cstdio>#include<set>usingnamespacestd;intmain(){ inta,b; while(2==scanf("%d%d",&a,&b)){ a+=b; set<int>st; while(a--){ intx; scanf("%d",&x); st.insert(x); } for(set<int>::iteratorit=st.begin();it!=st.end();++it){ if(it!=st.begin())printf(""); printf("%d",*it); } puts(""); } return0;}A#include<algorithm>#include<cstdio>usingnamespacestd;inta[1000000];intmain(){ intcas,n; scanf("%d",&cas); while(cas--&&1==scanf("%d",&n)){ for(inti=0;i<n;++i){ scanf("%d",&a[i]); } sort(a,a+n); for(inti=0;i<n;++i){ if(i)printf(""); printf("%d",a[i]); } puts(""); } return0;}H#include<stack>#include<cstdio>usingnamespacestd;chartmp[65535];intmain(){ while(gets(tmp)){ for(inti=0,c=0;tmp[i];++i){ if(tmp[i]=='(')++c; elseif(tmp[i]==')')--c; elseif(tmp[i]=='B'){ printf("%d\n",c); break; } } } return0;}K#include<stdio.h>#include<string.h>intmain(){ intn,i,j,k,t,r[23],stack[13]; charsi[13],so[13]; while(1==scanf("%d",&n)){ memset(r,0,sizeof(r)); memset(stack,0,sizeof(stack)); scanf("%s%s",si,so); stack[1]=si[0]; r[0]=1; for(k=t=j=1,i=0;so[i]!='\0';i++){ while(t<n){ if(j>0&&stack[j]==so[i]){//出棧
j--; r[k++]=2;//記錄進出棧的情況
break; } stack[++j]=si[t++];//進棧
r[k++]=1;//記錄進出棧的情況
} if(stack[j]==so[i]){//出棧
j--; r[k++]=2;//記錄進出棧的情況
} } n=n<<1; if(k<n){ puts("No."); }else{ puts("Yes."); for(i=0;i<k;i++) switch(r[i]){ case1: puts("in"); break; case2: puts("out"); break; } } puts("FINIS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年雞鴨養(yǎng)殖供應(yīng)協(xié)議模板版
- 福建省南平市建陽漳墩中學(xué)2020-2021學(xué)年高一英語聯(lián)考試卷含解析
- 2024毛竹山林業(yè)資源培育承包合同范本3篇
- 2024軟裝設(shè)計合同范本:現(xiàn)代辦公環(huán)境設(shè)計協(xié)議3篇
- 2024年上海市《消防員資格證之一級防火考試》必刷500題(真題匯編)
- 2024年公司各部門管理制度
- 【學(xué)習(xí)課件】第課中華大地的遠古人類
- 2025年度出口合同履行中的國際貿(mào)易信用評估與擔保協(xié)議3篇
- 2024年音樂作品版權(quán)協(xié)議:錄音制品與表演權(quán)的分配3篇
- 2025年1A13365國際貿(mào)易實務(wù)操作手冊分銷合同3篇
- 散狀料上料安全操作規(guī)程模版(3篇)
- 2025戶外品牌探路者線上新媒體運營方案
- 《個案工作介入涉罪未成年人的家庭幫教研究》
- 2024-2025學(xué)年人教版地理七年級上冊期末復(fù)習(xí)訓(xùn)練題(含答案)
- 統(tǒng)編版(2024新版)七年級上冊道德與法治期末綜合測試卷(含答案)
- 教育部中國特色學(xué)徒制課題:基于中國特色學(xué)徒制的新形態(tài)教材建設(shè)與應(yīng)用研究
- 2023年黑龍江日報報業(yè)集團招聘工作人員考試真題
- 安全管理人員安全培訓(xùn)教材
- 工程施工揚塵防治教育培訓(xùn)
- 影視后期制作團隊薪酬激勵方案
- 污水管網(wǎng)技術(shù)標
評論
0/150
提交評論