版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)結(jié)構(gòu)韓英杰信息工程學院計算機科學與技術(shù)教學目標(Goal)學會合理地組織數(shù)據(jù),恰當?shù)乇硎緮?shù)據(jù),高效地處理數(shù)據(jù)學會分析、把握計算機加工的數(shù)據(jù)的特性,為應(yīng)用涉及的數(shù)據(jù)選擇適當?shù)倪壿嫿Y(jié)構(gòu)、物理結(jié)構(gòu)和相應(yīng)的算法基本掌握算法的時間復(fù)雜度分析技術(shù)提高程序設(shè)計的質(zhì)量和水平,培養(yǎng)數(shù)據(jù)抽象能力為什么要學習數(shù)據(jù)結(jié)構(gòu)?(whyshouldlearn?)介于數(shù)學、計算機軟件、硬件三者之間的核心課程一般程序設(shè)計(尤指非數(shù)值計算的程序設(shè)計)的基礎(chǔ)設(shè)計和實現(xiàn)編譯程序、操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)及其它系統(tǒng)程序和大型應(yīng)用程序的重要基礎(chǔ)。用計算機解決實際應(yīng)用問題(1)需經(jīng)過以下三步驟:從具體問題中抽象出一個適當?shù)臄?shù)學模型。設(shè)計一個解此數(shù)學模型的算法編程調(diào)試,得到最終答案NiklausWirth:程序=算法+數(shù)據(jù)結(jié)構(gòu)算法:處理問題的策略
數(shù)據(jù)結(jié)構(gòu):問題的數(shù)學模型程序:算法用某種程序設(shè)計語言的具體實現(xiàn)程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計方法+語言工具和環(huán)境用計算機解決實際應(yīng)用問題(2)數(shù)值計算問題預(yù)報人口增長情況:微分方程求解梁架結(jié)構(gòu)的應(yīng)力:線性方程組求解球體或橢球體的面積:曲面積分非數(shù)值計算問題圖書館書目檢索自動化系統(tǒng)人機對弈排課系統(tǒng)AnExample(1)用C語言編寫一個一元多項式加法、減法和乘法的計算器P(x)=1+3x10000+2x20000Q(X)=5x31-3x10000+10x20001P=P+QS=P+Q稀疏矩陣的壓縮存儲AnExample(2)數(shù)組(1)浪費空間,方便實現(xiàn)(2)空間利用合理,但操作不易實現(xiàn)鏈表空間利用合理,方便實現(xiàn)103100002200001031000022000000…………011000020000登錄號書名作者出版單位出版時間N.3.73.762數(shù)據(jù)結(jié)構(gòu)嚴蔚敏吳偉民清華大學出版社2003.12例1:圖書館書目檢索系統(tǒng)自動化數(shù)學模型一對一的線性結(jié)構(gòu)例2:人機對弈數(shù)學模型一對多的樹結(jié)構(gòu)“井”字棋對弈“樹”先手:例3否:計砍算機來科學結(jié)專業(yè)蜻課程喝設(shè)置課程編號課程名稱先修課編號C1C程序設(shè)計無C2離散數(shù)學C1C3數(shù)據(jù)結(jié)構(gòu)C1C4數(shù)據(jù)庫基礎(chǔ)C3C5軟件工程C1C6編譯原理C1,C3C7操作系統(tǒng)C3,C4數(shù)學模型多對多的圖形結(jié)構(gòu)計算機專業(yè)課程開設(shè)先后關(guān)系圖C1C2C5C4C3C7C6例4榜:S挽NS橋(社即會化忙網(wǎng)絡(luò)環(huán))社會從化網(wǎng)腐絡(luò)(啄SN著S)暫:將分現(xiàn)實絕生活輔中的織社交鄰圈子葵搬到胡網(wǎng)絡(luò)帥上,拖利用毀“朋涂友的你朋友盜”(拜Fr膚ie旨nd框o料f囑a京Fr臭ie猜nd遍)關(guān)上系資靠源模儉式,猜依據(jù)縮慧六度豆分隔睡理論站,通跳過現(xiàn)絨實中府的朋妥友再序去認纏識朋卷友的歲朋友券形式罪,建適立一救個自潔己信堂任的合社交久圈。宏每個首個體拜的社砌交圈沈都不梁斷放轟大,爺最后拔成為悠一個梳大型盼網(wǎng)絡(luò)堤。六度其分隔街理論侍的通爆俗解疤釋是權(quán):“泰在人漆脈網(wǎng)舍絡(luò)中字,要襪結(jié)識偉任何集一位帳陌生饑的朋鹿友,判中間險最多攻只要京通過畝六個贈朋友嬌就可喇以達嗓到目莊的。切”計算據(jù)機科皺學與仿技術(shù)聯(lián)專業(yè)蛛課程滔設(shè)置主要溫學習途計算漆機科清學與榨技術(shù)嚷等方那面的調(diào)基本邀理論求和基稍本知紹識,慘接受屆從事窮研究挑與應(yīng)敵用計組算機冬的基所本訓磨練,課具有震研究但和開捕發(fā)計洗算機鑰系統(tǒng)座的基斧本能艦力,盲培養(yǎng)打能在助科研茶部門攝、教千育系聲統(tǒng)、岡企業(yè)錦、事粱業(yè)和按行政魯管理批等單剪位從便事計餓算機篩教學拾、科述學研滲究和置應(yīng)用將的計瘦算機刪科學總技術(shù)殺學科劇的高捧級專色門技肢術(shù)人獨才。主要柴課程努:離散器數(shù)學歇、高般級語候言程普序設(shè)籮計、逢數(shù)據(jù)錦結(jié)構(gòu)崗、數(shù)醉據(jù)庫壓基礎(chǔ)護、操成作系翼統(tǒng)、頭編譯緩原理格、軟榨件工演程模擬次電路早、數(shù)我字電塘路與耀邏輯革設(shè)計計算央機組友成原喊理、鑰計算爽機網(wǎng)去絡(luò)、稠微機犬原理博與接喂口技叉術(shù)軟件避工程離專業(yè)隱課程句設(shè)置培養(yǎng)寄目標水:培聯(lián)養(yǎng)具盟有良扣好的迫科學肚和文水化修通養(yǎng)、點良好皂的職隔業(yè)道猾德和匆綜合途素質(zhì)獨,扎知實的水計算溫機軟座件及元軟件寄工程寒基礎(chǔ)漆理論淋與專閘業(yè)知黑識,言良好踩的軟貫件設(shè)途計與魯編程置、項脖目規(guī)牛范管圖理、咳交流絡(luò)與組槐織協(xié)近調(diào)能矩力,予較強挎的實穗踐能訓力和巷創(chuàng)新架精神味,能夾適應(yīng)獲計算姥機軟調(diào)件產(chǎn)耗業(yè)發(fā)杯展需秒要的露復(fù)合盡型、慌實用厭型的偷高層捎次工警程管歸理與助應(yīng)用竄型人持才。糊學生鳥畢業(yè)辦后,住能夠區(qū)從事賠計算旬機系鹽統(tǒng)軟吸件和稼應(yīng)用責軟件摸的科尊學研初究、裙技術(shù)茶開發(fā)邁、項征目管置理、踏測試住維護神及相麗關(guān)工手作等雜。主要錘課程蝦:離浴散數(shù)敢學、臂高級舌語言艇程序遷設(shè)計棒、算收法與輝數(shù)據(jù)起結(jié)構(gòu)葬、數(shù)鈴據(jù)庫氏基礎(chǔ)油、操賊作系滋統(tǒng)、株編譯壤技術(shù)掛、計哨算機叛網(wǎng)絡(luò)孟、軟轎件工略程、智軟件類項目塌管理沉、軟守件體名系結(jié)狂構(gòu)、桶軟件由需求對工程殼、軟冒件文經(jīng)檔規(guī)謀范與吳標準下、軟傻件測擊試技飄術(shù)、技軟件懶成熟梯度模箭型、完系統(tǒng)娘分析鈴與設(shè)禾計、敢軟件國方法辛與過飄程等杠。數(shù)據(jù)那結(jié)構(gòu)街的主釘要研衫究內(nèi)智容(獵wh拐at河t劃o冒l(fā)e脾ar察n?派)數(shù)據(jù)得結(jié)構(gòu)邏輯好結(jié)構(gòu)物理悄結(jié)構(gòu)相關(guān)既操作斬及實孟現(xiàn)線性埋結(jié)構(gòu)樹形線結(jié)構(gòu)圖形袋結(jié)構(gòu)集合順序厭結(jié)構(gòu)鏈式潛結(jié)構(gòu)索引伴結(jié)構(gòu)哈希險結(jié)構(gòu)建立銷毀插入刪除查找數(shù)據(jù)感結(jié)構(gòu)搶是一怨門研屢究非謀數(shù)值辦計算假的程遵序設(shè)皆計問周題中抖計算兵機的齊操作釋對象羨以及精它們恥之間致的關(guān)可系和泳操作漏等的劃學科處。P壞3數(shù)據(jù)際結(jié)構(gòu)弱課程廳內(nèi)容銅框架數(shù)神據(jù)抹結(jié)民構(gòu)基礎(chǔ)絮數(shù)據(jù)虛結(jié)構(gòu)應(yīng)用騎數(shù)據(jù)其結(jié)構(gòu)棧隊列線性表線性蔬結(jié)構(gòu)非線欄性結(jié)竊構(gòu)串查找內(nèi)部排序外部排序文件動態(tài)存儲管理數(shù)組廣義表樹二叉樹圖怎樣佛學數(shù)噸據(jù)結(jié)批構(gòu)?酒(h姓ow合t勾o窄le該ar霜n?密)學“逝活”助:聯(lián)曠系實裹際,繭富于呀聯(lián)想來,要笨求對惰書中勒的每并個算福法能幸在腦鎖海中誘建立震相應(yīng)彈的模則型,撈而不助是死叛板的贏算法株。學“核死”悄:牢翼記基律本概千念和碗經(jīng)典女算法支。學“毅活”軟:總杰結(jié)算障法之掏間的進共性服和特拐性。,音石視頻懷資料嘩下載數(shù)據(jù)姻結(jié)構(gòu)慌習題模與解中析(撫C語潮言篇坡)李醒春葆兇編著數(shù)據(jù)鎮(zhèn)結(jié)構(gòu)神(用鎖面向吹對象閱方法紛與C昂++昂描述敲)殷許人昆物編著學死學活學活教學捏要求成績鼠:平時椅(考般勤+疊作業(yè)沖):20鏟%期末言考試搭:80揭%上機饞:以組腔為單劃位(迅<=源3人覽/組福)每人精上交確5次舅實驗央報告1.逝2基本細概念英和術(shù)碌語(外1)數(shù)據(jù)昌(d則at否a):信往息的境載體裹,是屢描述栽客觀徹事物消的數(shù)茂、字箏符及象所有凝能輸吉入到情計算旺機中府被計治算機考程序晨識別掛和處傅理的堪符號秋的集貢合。數(shù)值稠性數(shù)爽據(jù)非數(shù)五值性籍數(shù)據(jù)數(shù)據(jù)掘元素籠(d垂at聽a筒el偉em慰en厘t):數(shù)堪據(jù)的基本單位一個惡數(shù)據(jù)遲元素邁可由察若干腳個數(shù)劃據(jù)項搭組成順。數(shù)據(jù)議項是價數(shù)據(jù)招不可嘗分割女的最小單位沾。數(shù)據(jù)故對象蝦(d喉at倡a膨ob赴je太ct賤):數(shù)立據(jù)的潔子集毫。具并有相鞠同性儲質(zhì)的疊數(shù)據(jù)五元素捉集合輸。例如晝:整嚇數(shù)對脹象N刑=咸{晃0,1紹,逐2櫻,憲…逆}1.搞2基本胞概念盲和術(shù)項語(槽2)數(shù)據(jù)秘結(jié)構(gòu)(邏傍輯結(jié)蘆構(gòu)):相互子間存寒在一墻種或途多種特定咐關(guān)系的數(shù)退據(jù)元裝素集乒合。結(jié)構(gòu):數(shù)瘦據(jù)元冶素相蔥互之詞間的尤關(guān)系特定厘關(guān)系甲:特定關(guān)系數(shù)據(jù)結(jié)構(gòu)舉例沒有關(guān)系集合正整數(shù)一對一關(guān)系線性表書目檢索自動化系統(tǒng)一對多關(guān)系樹棋局對弈樹多對多關(guān)系圖(網(wǎng))課程開設(shè)先后關(guān)系圖1.阻2基本姓概念司和術(shù)鋸語(蛾3)數(shù)據(jù)窄結(jié)構(gòu)總的形原式定擴義:DS旺=(孫D,輕S)D:槳數(shù)據(jù)賊元素姿的有限集合山。設(shè)D桌={握a1,a2,…麻,ai,aj,…載,an}S:景定義愈在D驢上的旨關(guān)系寸的有邁限集控合,圍S=隨{R不}。若aiRaj,則堤<ai,aj>∈征S若aiRaj,且宣ajRai,則己(ai,aj)∈掘S例:擾復(fù)數(shù)么可定示義為鉛一種葉數(shù)據(jù)賺結(jié)構(gòu)自:CO學MP換LE知X=妹(C飲,R柄)C:思含有削兩個蕩實數(shù)逃的集識合{哨C1,C2};R:濟{P澤}是懇定義亦在C洋上的衣一種央關(guān)系熱{<漿C1,C2>}課上原習題字:T叼=(為K,R),畫出吃它所權(quán)對應(yīng)怒的邏核輯結(jié)暖構(gòu)K=蜂{1恥,2崖,3灰,4活,5鳥,6禿}而;R純={緒r}惰r鉆={敢<1方,2宵>,搖<1紗,3程>,乎<2掉,4喬>,鵲<2粥,5賠,>仙,<遭3,販6>煤}aiajaiaj線性萍結(jié)構(gòu)樹形喘結(jié)構(gòu)456231ABEDCF圖形怪結(jié)構(gòu)125643集合楚結(jié)構(gòu)4種綱基本最結(jié)構(gòu)綢關(guān)系牛圖四類嘗基本將邏輯增結(jié)構(gòu)帖關(guān)系僚圖數(shù)據(jù)互的物臟理結(jié)幅構(gòu)(存儲衣結(jié)構(gòu)):數(shù)據(jù)邏輯結(jié)構(gòu)始在計濟算機雅中的口表示方:數(shù)據(jù)摔元素疲的表抵示數(shù)據(jù)破元素消之間栗關(guān)系掠的表吉示順序寄映象沉:借助收元素盈在存罷儲器滾的相象對位見置表沫示數(shù)非據(jù)元不素之綱間的率邏輯伴關(guān)系等。對掌應(yīng)于嚴順序僅存儲護結(jié)構(gòu)非順窯序映框象:鏈式可存儲榮結(jié)構(gòu)獻:利數(shù)用指石示元歌素存松儲地州址的箭指針臂表示葛數(shù)據(jù)州元素吊間的勒邏輯賞關(guān)系改。索引咱存儲暫結(jié)構(gòu)哈希紹存儲述結(jié)構(gòu)1.品2基本哄概念甘和術(shù)寨語(膨4)復(fù)數(shù)負存儲卸結(jié)構(gòu)墓示意招圖3.糧0-2職.3-0柄.74.址803煌0003擠0206垮3206息34……-2走.304陜153.咽004桶15-0滴.74.踐803輔0003訊0206趕3206賞34…………順序販存儲座結(jié)構(gòu)最鏈式他存儲園結(jié)構(gòu)數(shù)據(jù)扁邏輯庸結(jié)構(gòu)玩和物促理結(jié)虛構(gòu)之鞋間的衣關(guān)系任意稻一個行算法徑的設(shè)計取決尖于選打定的爬邏輯酬結(jié)構(gòu)算法稻的實現(xiàn)依賴孔于采確用的顏物理晉結(jié)構(gòu)玻。程序算法數(shù)據(jù)結(jié)構(gòu)線性結(jié)構(gòu)非線性結(jié)構(gòu)存儲結(jié)構(gòu)
順序存儲結(jié)構(gòu)非順序存儲結(jié)構(gòu)定位(查找)加法、乘法比較、移動(邏輯)(物理)1.遮2基本滴概念交和術(shù)覽語(攏5)數(shù)據(jù)金類型:一組饞性質(zhì)喇相同妥的值揉的集扇合以海及定叫義于亞該值名集上鉛的一艇組操德作的米總稱郊。例:C語言續(xù)中整厚型變搬量值:限定義隱在某匠區(qū)間收上的誓整數(shù)操作鄉(xiāng)豐:加哄、減裙、乘浩、除妹、取借模按值汗的不漸同特粱性分軟:原子啄類型:值聚不可棒再分C的五種迅基本鏟數(shù)據(jù)嘴類型:ch斗ar曲,i譜nt場,f樂lo習at蕉,d資ou蛛bl促e,甘vo這id結(jié)構(gòu)湊類型:值維由若林干個幕成分駝按某油種結(jié)修構(gòu)組攔成。1.貌2基本耐概念衛(wèi)和術(shù)娘語(缸6)抽象確數(shù)據(jù)極類型:一個趁數(shù)據(jù)談模型桑及定材義在弓該模旦型上印的一手組操壇作。形式頌定義谷:DS祝=(D,漫S蟻,岸P)。D:數(shù)據(jù)勒對象S:D上的棗關(guān)系梅集,P:對D的基班本操佛作集辣。按值沃的不堡同特跌性分蛾:原子左類型:很杜少,世因固應(yīng)有數(shù)洽據(jù)類出型可捆以滿趴足需端要。結(jié)構(gòu)私類型固定蒙聚合分類型:值爹由確尼定數(shù)弊目的走成分新按某澆種結(jié)使構(gòu)組異成,墻如復(fù)酬數(shù)??勺兯┚酆匣痤愋停航M蛙成值即的成扯分數(shù)譜目不蜂確定引,如字有序賺整數(shù)狂。抽象姜數(shù)據(jù)駕類型電的定戀義格躍式(慘僅適控用于城本書法)AD蝴T奸抽眼象數(shù)渣據(jù)類窮型名波{數(shù)據(jù)季對象獲:〈鼻數(shù)據(jù)出對象箏的定劫義〉數(shù)據(jù)箭關(guān)系尊:〈專數(shù)據(jù)吼關(guān)系蜂的定館義〉基本胸操作池:〈帖基本鞠操作挽的定植義〉}來AD驕T斷抽象呆數(shù)據(jù)細類型至名基本秒操作拉的定狀義格堅式如刃下:基本學操作討名(扔參數(shù)嘆表)初始殃條件丈:〈初始蒼條件針描述〉操作含結(jié)果譽:〈操作湊結(jié)果接描述〉初始嚼條件由描述了操前作執(zhí)弟行前怠數(shù)據(jù)君結(jié)構(gòu)胳和參舅數(shù)應(yīng)棍滿足妹的條倒件,騾若不像滿足素,則遞操作兆失敗狠,并律返回衡相應(yīng)掉出錯刷信息陣。操作飲結(jié)果雹描述說明餐了操否作正筒常完確成之哄后,蔥數(shù)據(jù)條結(jié)構(gòu)皂的變?nèi)癄钤r和蝦應(yīng)返今回的膜結(jié)果蟲。若蘇初始訓條件疊為空斧,則究省略良之。抽象塑數(shù)據(jù)渴類型朝的定攔義格強式舉崗例(泄1)例:黑抽象荒數(shù)據(jù)銅類型騎三元樹組AD褲T冒T植ri尤pl娘et樓{數(shù)據(jù)辣對象掙:D欄={載e1租,e榜2,協(xié)e3趁|e浩1,殲e2平,e闊3∈E跪le轟mS武et}數(shù)據(jù)震關(guān)系巷:R外1破=芝{<明e1吵,e林2>烈|<趨e2受,e骨3>走}基本駕操作吹:In唉it枕Tr席ip牢le畝t(娛&T耽,v私1,罰v2圾,v唐3)初始怎條件之:操作田結(jié)果蠶:攝構(gòu)造停三元園組T鐵,用出參數(shù)蕩v1跟,v急2和謠v3兵給e梅1,緊e2尚和e紛3分咱別賦釣值。De挪st隙ro辰y(tǒng)T祖ri撈pl液et貼(&挨T)初始陽條件久:府三元膜組T分已經(jīng)藏存在恢。操作槳結(jié)果化:康銷毀粘三元代組T弊。Ge言t(返T,災(zāi)i,拐&e聚)初始愿條件迅:備三元欄組T捏已經(jīng)潑存在督,1固<=胃i<壁=3粱。操作古結(jié)果熊:史用e井返回律三元鋸組T銷的第您i個嫌元素介。抽象靠數(shù)據(jù)伏類型車的定第義格賄式舉渴例(探2)Pu穩(wěn)t(瓶&T脈,i呀,e諒)初始狂條件聰:算三元蟲組T吊已經(jīng)紛存在蟲,1捏<=院i<栽=3仁。操作屈結(jié)果桶:鎖用e轎值取巨代三露元組泉T的幟第i瘦個元叛素。Is渠As濾ce君nd顏in撐g(筍T)初始圈條件洋:逢三元糞組T芒已經(jīng)確存在誕。操作恰結(jié)果米:婚如果膨三元棚組T察的三禿個元邀素按測升序聾排列拐,則瓦返回釣TR讀UE列;艇否則然返回侍FA脹LS榜E。Is膚De笛sc描en翠di春ng怒(T棍)初始族條件奴:唇三元惰組T旗已經(jīng)卵存在蒙。操作補結(jié)果遙:蒜如果肯三元占組T骨的三零個元周素按璃降序管排列雪,則譜返回道TR謝UE笛;隙否則或返回隱FA弄LS純E。Ma歪x(梯T,藏&e令)初始酸條件占:既三元趨組T揭已經(jīng)宜存在餐,。操作扯結(jié)果之:頂用e故返回望三元央組T愧的最退大值故。……高……}A兩DT改T象ri腦pl疏et1.勝2基本推概念稀和術(shù)溜語(擠7)多形遮數(shù)據(jù)忍類型:其訊值的賽成分蒼類型搬不確沉定的姜數(shù)據(jù)注類型犯.例如目Tr塑ip千le養(yǎng)t中嫁的e牧1,佩e2驕,e沈3可平以是尿整數(shù)他或字磁符或考集合樣。元閑素之惰間關(guān)希系相兄同,類基本稻操作覆也相伐同。1.左3始抽象急數(shù)據(jù)遭類型暗的表座示與舒實現(xiàn)抽象棒數(shù)據(jù)驗類型屠可以屯通過印固有健數(shù)據(jù)豪類型地表示毀和實粘現(xiàn)。本書浸采用矮介于挪偽碼吼與C盟語言貓之間呈的類動C語錢言來臉表示鋒和實捐現(xiàn)抽惠象數(shù)石據(jù)類貞型,因即用鹿類C擇語言侮作為乏數(shù)據(jù)結(jié)結(jié)構(gòu)瓶及其車算法侍的描駁述工帥具。類C閱語言悼:精亮選了養(yǎng)C語劈燕言的恐一個澤核心富子集弟,同星時做估了若氣干擴眨充修雁改,煌增加策了語凡言的描述巖功能。引入糠了C徐++膠的引錦用類詢型,即俘在參餅數(shù)名職前加凡“&”C+僑+的像引用嚴數(shù)據(jù)凝類型遲(1蠟)引用機是C箏++慣語言牽對一亡個變姻量或堂常量答標識溪符起帳的別扣名,尺如已懲定義躬一個覽變量嶄va死l,項建立號一個較對它坡的引魯用r拋va泊l,蔥就為茫變量胸va王l起蹦了一謠個別逮名,孤va船l和瞧rv困al布指向畏同一餅變量沒,使委用方黨式也錯完全艱相同套,說政明引圍用的克方式佳如下晶:in陷t商va蠻l;in考t終&r裳va讓l=悲va孤l;編譯簽程序長不為追“&慣”后堵的標周識符葡分配柄內(nèi)存吵空間炸,只矛是簡仗單地撈將它迎所引絞用的蟻那個癥標識均符所袖具有泊的內(nèi)浸存空擋間賦錯給它拾。能夠隊引用柴的數(shù)乓據(jù)類蜂型簡單酸數(shù)據(jù)比類型陸的變腫量或牙常量無:如背in霉t梳&,災(zāi)ch摧ar涂&遺,茅fl順oa確t麗&,帖d彈ou題bl伍e議&,鎖b奏oo錢l擺&結(jié)構(gòu)簽類型城的變偽量或上常量指針站變量使或常外量C+搏+的像引用喘數(shù)據(jù)貼類型姿(2音)不能且引用等的數(shù)灶據(jù)類色型vo譽id嬸:v宗oi靜d本丸身沒雀有數(shù)盈據(jù)類宴型,壓引用嚴無意虹義數(shù)組風名:錄數(shù)組重名不炭是變羊量,稍引用促無意功義指向海引用豪類型科的指嫩針:喚引用頭本身駛只是存一個碼符號駕,沒弦有內(nèi)釀存空具間,赤不能辰定義生指向唱引用僻類型雅的指遇針。例如蜓:in褲t迷ar元r[任10監(jiān)];in葬t(yī)蹈&r序ar答r=綱ar農(nóng)r;//床錯誤in藏t蜻&r階ar悄r=態(tài)ar愧r[雀0]慚;//股正確in棚t董i;in符t抖&r麥i=舍i;//鄰正確in播t棵&*謀pr貪=&戰(zhàn)ri與;//卻聲明幸指向袍in率t型館引用誰的指碌針,喚錯誤46sw源ap搞(i挽nt誘x折,糾in簽t敬y)程{in迎t附t;t=婚x;侍x=叨y;旅y=膨t;}vo法id威m洞ai司n(算){in喚t殘a=膛46黃,兇b=成-1悶00團;pr臺in腔tf大(“紹a=暑%d津,b逃=%幅d\零n”飯,a看,b垮);sw管ap膊(a紡,b冷);pr昆in濕tf狠(“字a=服%d抽,b珍=%哄d\本n”餐,織a,近b)暮;}-1鍬00程序描輸出舌為:a=迫46脊,b凱=-忠10際0abxytma際insw賭ap內(nèi)費存-1蝦004646交換毫兩個輸變量晚的值挎(函鄙數(shù)參績數(shù)傳軟遞采怕用值而傳遞尾方式遍)a=逐46擔,b濃=-翠10會0-1判0046錯誤原因彼:C的染函數(shù)裝參數(shù)訓傳遞鬧是值頃傳遞仰方式值,并房誠且是寺由實的參傳泉遞給必形參霧。46vo銳id僅s刪wa他p(潔in消t俊*p釣1,朵i界nt死*律p2乳)瞧{in買t劑te似mp丟;te竹mp構(gòu)=*櫻p1央;*咽p1續(xù)=*瞎p2暢;*賊p2地=t身em次p;}vo傻id痕m床ai制n(普){in仰t腸a=歪46吐,b橋=-簽10常0;in輝t耽*p持_a幻玉,*冠p_缸b;p_怖a=柱&a獲;p大_b倍=&霸b;pr戶in陸tf籠(“充a=霜%d眼,b完=%莫d\跌n”赴,a錯,b從);sw溜ap易(p乒_a榆,p釋_b漿);pr貧in苗tf爭(“品a=欲%d勻,b縮慧=%徹d\止n”蟲,a啞,b冷);}-1度00程序筑輸出齊為:a=接46疑,b汁=-籍10避0abte役mpma種insw托ap內(nèi)平存20永0220披0046交換柄兩個桶變量磁的值州(函卡數(shù)參窄數(shù)傳昂遞采撤用地壓址傳場遞方輔式)a=星-1塘00隱,b縣=4胸6-1漲0046p_摟ap_槳b20鮮0020啄0220溉0020匯02p1p2正確院,在轉(zhuǎn)函數(shù)荷體里猾通過傭間接睛訪問吵交換嫌指針葛所指俊的變加量的震值。交換政兩個生變量挑的值拆(使愛用引逢用類按型的追參數(shù)防)sw終ap墻(i鋒nt&x,皮in向t&y){巴in根t殼t;t=寬x;判x時=y窮;師y仔=t飛;}vo練id勾m黨ai猛n(肯){in控t渣a=怒46倒,b合=-早10譜0;pr媽in齊tf難(“孟a=擦%d薯,b猛=%迫d\腹n”菜,a洋,b拉);sw閘ap化(a艘,b似);pr繁in室tf腎("遵a=亮%d蜓,b喪=%旗d\我n"輸,a親,b覆);}46-1撿00程序娃輸出清為:a=斜46期,b憂=-薪10匪0abtma趟insw初ap內(nèi)持存a=判-1棗00川,b栗=4匙6-1酒004646xy正確變量雄的引苦用和令變量益都是鵲同一卵變量劫,交啟換變浸量的醫(yī)引用花就是筋交換遇變量始本身只。返回梳AD盟T的順表示拴和實丑現(xiàn)算法堂的描斜述方恢法自然副語言傳統(tǒng)南流程趴圖結(jié)構(gòu)股化流烤程圖NS越圖偽代址碼計算浪機語笑言自然事語言順序政查找協(xié)da復(fù)ta角[n職]的雜某個茄元素戰(zhàn)ke叔y(販假設(shè)乞da棚ta密和k院ey值已存溪在)St鴉ep巡壽1:飽從序茄列中崇的最勾后一晴個元撓素開華始查角找St算ep倍2:毯若該立元素蛙值不稀等于倍ke陷y,幫查找征前一調(diào)項.St寧ep界3齊:若更該元浙素值秧等于問ke農(nóng)y,聰表示警查找兔成功究,返賠回k局ey巴在序鎖列中鑄的位否置,眉去S泄te職p5溪.St蒸ep閑4:買如果董數(shù)據(jù)戒全部嬌查找識過但肢未能梢找到者ke月y,隸表示羅查找掃失敗廢,返庸回0歇。St憲ep勿5:巡壽結(jié)束結(jié)構(gòu)晚化流劃程圖結(jié)構(gòu)?;掏粜蛄髌鲁虉D攀舉例開始查找刃成功懂,返遇回i查找效失敗割返回缺0da替ta陣[i隸]=衛(wèi)=k場eyi=坡n元素埋全查許過YYNN順序滔查找da儀ta授[n]的某味個元歇素ke桐y(假設(shè)da斯ta和ke廈y已存淘在)結(jié)束i-陷-NS迷圖NS負圖也槐叫盒遵圖,呼一種枝符合鈔結(jié)構(gòu)爽化程宋序設(shè)消計原拌則的扯圖形掩描述殃工具嫂。五種主基本爛控制氣結(jié)構(gòu)校由五孔種圖階形構(gòu)喇件表青示:NS謀圖舉繳例順序呈查找樸da上ta望[n年]的銜某個復(fù)元素舟ke錦y(蒼假設(shè)濟da爐ta朱和k壟ey養(yǎng)已存束在)Fi=ndata[i]==key
查找成功返回key所在位置
全查過查找失敗返回0TFT下一次循環(huán)Dowhile(data[i]!=key)偽碼以夾漆雜程饒序語答法和沉自然牙語言熄的形境式來捐描述型解決舒問題諸的方妨法,順序教查找鋒da倉ta擾[n脈]中罷某特構(gòu)定值鍋ke咬y(粗假設(shè)敢da驕ta類和k較ey鹿已存仔在)be攀gi檢ni←另1wh鄰il萍e棟i<負=n瀉d哄obe狼gi但nif琴d穴at漠a(chǎn)[聽i]泛=k腿ey禿t輩he災(zāi)nre咽tu譽rn助ii事←i討+1en過dre桑tu勝rn啦0en將d計算述機語辨言用C娘語言狗實現(xiàn)順序奪查找精da泛ta脫[n架]中疊某特燒定值沖ke青y(餅假設(shè)哲da停ta攔和k千ey饞已存堤在)in睛t帖Se跨ar宿ch低(i田nt脾d饒at郵a[屑n]辭,i涼nt病k馬ey痰){in低t灘i;da顛ta帳[0渣]=危ke溪y;fo澆r(砌i=破n;固!E宮Q(脖da撒ta泊[i能],留ke歡y)慰;i檔--釘);re解tu良rn指i暴;}#晉in更cl釘ud短e<s忠td斥io駛.h斬>//零包含嶄預(yù)編貝譯頭冰文件#仍de暈fi案ne妻n營5bo宿olEQ籃(in沫ti,in許tj)//愧判斷爭兩個照整數(shù)震是否兇相等{if(i穿==剪j)re滅tu層rn1;el怎sere壩tu給rn0;}vo章idCo諒ns解tr莊uc草ti估on興(i賭nt行d昨at注a[導(dǎo)n+頂1]律)//屯構(gòu)造乘da贈ta贏[n店]{in炊ti;pr伐in芬tf強(“映in羽pu晴t喘th江e擾ke隸yv似al咬ue碧:\揪n”)手;fo船r(礦i=市1;聯(lián)i<籍=n夢;i桌++春)sc磨an購f(污"%飽d"夫,&能da畫ta餡[i分])葵;}順序添查找縱數(shù)據(jù)亞序列沫中某歇特定將值的翁程序槍代碼vo介idma匹in覽(){in違tke額y;in咱tda縣ta暢[n談+1紹];Co妙ns啞tr遠uc棋ti息on裕(d吹at攪a);//山創(chuàng)建鬼待查元找數(shù)趴據(jù)序戒列pr藝in傳tf欄(“很in筋pu樹t晨ke她y:高\n禍”)素;sc怎an懇f(蠶“%陵d”鎮(zhèn),&誦ke嚼y)形;//佛讀入孟要查壩找的稿值in沉tpo創(chuàng)si腳ti食on攀=S圾ea否rc蒼h困(d賢at嶄a,旱ke帖y);//悄查找pr辣in究tf魄("刷th嘆e辟ke天y逝is吳l京oc周at屋ed紀i損n跡%d淚",別po呼si辛ti批on杯);}順序全查找倡數(shù)據(jù)思序列皮中某誕特定究值的擊程序勝代碼類C客語言萍的描上述功始能1、預(yù)定懷義常漁量和希類型:2、數(shù)據(jù)瘡結(jié)構(gòu)盼的表隨示和領(lǐng)數(shù)據(jù)穗元素耗類型芝的定膠義3、基本危操作霧的算圣法用篩函數(shù)犧描述4、算法太描述臘中可他以使千用的薯賦值尿語句旺形式5、算法惱描述稍中可才以使距用的發(fā)選擇檢結(jié)構(gòu)硬語句棕形式6、算法戶描述匠中可描以使序用的企循環(huán)父結(jié)構(gòu)脫語句類形式7、描述女算法富中可帶以使良用的破結(jié)束確語句欣形式8、算法霞描述酬中可著以使架用的霜輸入醒輸出枝語句翁形式9、算法透描述歸中可倍以使俊用的賀注釋財格式10籌、算法匹描述迫中可岸以使突用的悼基本嚷函數(shù)11狀、算法潮描述煤中可斥以使?jié)櫽玫拿哼壿嬹傔\算血的約石定轉(zhuǎn)向貴算法俘和算慣法分游析1、拾預(yù)定稱義常棕量和境類型//嫩函數(shù)與結(jié)果予狀態(tài)遷的代汽碼:#d醋ef久in撓e扁TR庭UE攤1#d陰ef斧in雪e畏FA擊LS爆E模0#d討ef蒜in孕e桂OK求1#d搬ef應(yīng)in割e見ER咽RO片R剩0#d神ef總in群e輛IN監(jiān)FE綠AS兔IB仗LE奏-題1#d薦ef扎in襪e狠OV輸ER社FL胖OW損–喪2僅限仰本書誼,若激要上著機使倍用,精需自橋己定藏義!2、稀數(shù)據(jù)悟結(jié)構(gòu)安的表耽示和維數(shù)據(jù)臘元素每的類姓型定狠義數(shù)據(jù)舞結(jié)構(gòu)逝的表烏示(陷存儲浮結(jié)構(gòu)蹲)用拖類型鋒定義冷ty廟pe泊de眾f描歇述。數(shù)據(jù)肆類型研約定弱為E吩le羅mT喬yp喘e:扁由用糾戶在準使用葛該數(shù)拳據(jù)類券型時寨自行灘定義饒。但犯它們堡不是攏C語可言的隸關(guān)鍵搶字。上機朗時切憤勿直甩接使府用。例子ty診pe侄de剩f掛in臭t券St書at慮us尾;ty家pe剩de某f悅in悲t眾El葬em托Ty殿pe餓;ty脂pe危de臂f薄in疾t卷Ar棚ra緣瑞y[舅10穴];3、岔基本府操作步的算鑒法用序函數(shù)床描述基本愧操作花的算滲法都肯用以這下形務(wù)式的突函數(shù)乞表示勒:函數(shù)銜類型訊函題數(shù)名江(函安數(shù)參儀數(shù)表龍){//竭算法齒說明語句飯序列}//獲函數(shù)景名例子訊:St糕at運us挪I李ni文tT雁ri鋼pl端et享(T啟ri拖pl端et怖&笨T,敬El軌em遼Ty迷pe賞v糖1,參El浩em犁Ty金pe罵v樂2,旗El四em炎Ty懶pe礙v璃3){//原構(gòu)造葡三元修組T槽,依株次置吉T的壺3個麻元素內(nèi)值為績v1衛(wèi),v鎮(zhèn)2,凱v3T=怪(E濕le萍mT憑yp籌e*道)m戰(zhàn)al結(jié)lo脾c(雜3*給si務(wù)ze夫of昆(E辛le送mT批yp鴿e)深);if古(!溝T)書e身xi員t(崇OV膽ER筐FL壓OW放);T[角0]輕=v任1;隸T[拌1]叛=v讓2;犁T[愁2]睛=v焰3;re錫tu觀rn闊O鵲K;}//究In液it旗Tr誤ip爺le清t4、今算法爺描述語中的剪賦值鎖語句奴形式商(1層)在算極法描謊述中原可以法使用本的賦鍵值語鵲句形棟式有忙:簡單逃賦值豪變量眼名爛=夏表達框式;串聯(lián)漠賦值境變量漢名1茂=變漿量名評2=余.么..搏=變明量名稻n=邁表達快式;成組鄉(xiāng)豐賦值蚊(好變量瞎名1懷,.品..耗,變俊量名確n)豪=(辦表達僑式1撞,.嘗..刊,表撒達式瘡n)偶;結(jié)構(gòu)謹賦值誕結(jié)構(gòu)谷名1透=究結(jié)找構(gòu)名導(dǎo)2;結(jié)構(gòu)防名譜=(蠻值1摸,值糾2,急..性.,帶值k狹);條件害賦值擊變量均名尾=終條件獻表達斜式耀?鍵表達路式T朽:表棋達式串F;交換脹賦值究變量稼名1沒<-砍>黃變量鼓名2甲;St乎at袍us鎮(zhèn)e栽xa反mp任le胖_1慶(萄){in膽ta[謹10嘩];a[繳0.覆.9盲]=莊0;re傷tu驢rnOK寶;}St蹤蝶at皇us才e漏xa沸mp臘le捧_2旨(i球nt盾x息,i告nt藝y罷){if(x診>y鐵)x<凈->錢y;re統(tǒng)tu脹rnOK兆;}te心mp牽=x標;x=謙y;y=膜te抽mp揪;fo布r(竭i=圣0;家i<元=9渾;i炸++殖)a[善i]貸=0頑;4、卷算法炸描述亦中的圖賦值稀語句支形式慎(2帝)ty罰pe多de叫f禽st受ru悲ctst落ud拾en隆t{ch儲arid毒[5丹];ch最arna孕me諷[1則1]寫;in伍tag傻e;in賠ten束g;in給tds掏;}s蛾tu聲de征nt嘩;vo駛idex鄭am渠pl涌e_們3(統(tǒng)){st時ud蠢en袍t咱s;s=法(“喂20兄11浴”,墊”S宅am效”,駕20梁,1培00著,1爬00梁);}ge裙ts槽(s縱.i鼻d)頑;ge漲ts涉(s慚.n疼am診e)撕;s.姜ag趙e=笛20圈;s.義en壁g=斃10晴0;s.百ds拒=1中00舞;5、耽算法若描述樓中的信選擇采結(jié)構(gòu)帳語句醋形式在算促法描回述中妖可以倘使用昆的選庸擇結(jié)標構(gòu)語師句形然式有南:條件鑼語句邪1綢i鍋f(乒表達垂式)些語帥句;條件冤語句備2卸i凍f貌(表怖達式繡)福語句修;el展se某語頃句;開關(guān)祥語句坑1貢s抹wi凳tc勺h面(表許達式徒)催{ca攀se劇值得1:慕語句測序列醫(yī)1;摟br違ea體k;ca壟se亮值光2:慘語句余序列歡2;農(nóng)br滿ea涌k;..亮.ca餃se柏值板n:遺語句信序列跑n;示br雖ea赴k;de框fa睛ul別t:姓語句議序列四n+柳1;}開關(guān)嚷語句攝2罵s鉗wi講tc島h歌{ca貿(mào)se趕條粗件1扒:語倉句序間列1揮;b個re超ak干;ca還se紅條送件2皇:語珍句序淚列2門;b遙re放ak鴉;..瘋.ca幕se扁條豎件n垃:語貸句序陡列n饅;b宗re辛ak悔;de拍fa端ul敞t:坡語句挖序列校n+查1;}6.嬌算法旱描述稻中的銜循環(huán)屆結(jié)構(gòu)辱語句該形式fo否r循顫環(huán)語鬧句fo罪r(潛表達聞式1喘;循棋環(huán)條就件表洞達式旦;表認達式煮2)奶語句本;wh竹il梳e循牽環(huán)語竟句wh腎il洪e膠(循戒環(huán)條豈件表勤達式脫)盲語句菊;do請-w滴hi積le塑循環(huán)絮語句do聚{語句尊序列宅;}死wh來il斜e螞(循梳環(huán)條靠件表臺達式零);7.攤算法連描述小中的苗結(jié)束步語句扶形式函數(shù)慘結(jié)束遺語句re狂tu燙rn礦表酷達式幸;re遺tu框rn讓;ca硬se棚或循選環(huán)結(jié)新束語捕句蝴b鐵re國ak床;異??藿Y(jié)束除語句菊ex器it客(異霸常代夫碼)握;8.睛算法勒描述絲式中的徒輸入匪輸出虜語句芝形式輸入政語句構(gòu)sc導(dǎo)an狂f(觀[格管式串傍],快變量適名1帥,.浪..懇,變駁量名粱n)網(wǎng);輸出伸語句聯(lián)pr籠in驢tf胞([椅格式吉串]飯,表班達式共1,洗..掉.,物表達赴式n詢);方括蛙號(蝴[唱])詳中的尖內(nèi)容爬是可銅以省從略的巡壽部分獎。9.皆算預(yù)法描丑述中塞的注明釋格短式在算悄法描瘡述中頁使用韻的注觸釋格犬式為換:單行喪注釋//夏文字陳序列10洪.悟算蕩法描互述中去的基采本函皇數(shù)求最后大值槍m魄ax堵(表牽達式混1,依..創(chuàng).,蹲表達砍式n到);//紫返回鴿參數(shù)噸表中子n個死表達盯式計候算結(jié)沒果的梢最大邪值。求最付小值蹈m勞in槍(表踐達式檔1,掙..情.,某表達批式n仇);//振返回積參數(shù)謝表中雄n個蛇表達穴式計煉算結(jié)鉆果的肉最小顯值。求絕統(tǒng)對值羽a拘bs洋(表岔達式照)求不扛足整旅數(shù)值墨f陷lo茄or亦(表辦達式宇)求進叢位整葛數(shù)值趟ce富il奧(表跑達式墓)判定柜文件項結(jié)束塑e禽of藥(文漆件變耳量)束或e套of判定東行結(jié)賠束婦eo部ln谷(文細件變寄量)租或e炎ol顆n11孤、算歷法描偉述中禁的邏派輯運烏算的線約定與運薄算&牢&:挎對于上A&困&B區(qū),當饞A的弓值為桿0時鑒,不鞭再對雕B求廉值或運埋算|印|:今對于羊A|知|B狐,當刮A的莫值為裁非0胖時,德不再晨對B鋸求值1.癢4算法錦和算踢法分仰析算法全的定廉義:對特姨定問薄題求直解步稈驟的欺描述慘,指女令的有限序列籍,一挨條指中令表趕示一伴個或帥多個枕操作。算法接的特摩性:有窮興性:算法富應(yīng)在載執(zhí)行箱有窮粉步后神結(jié)束玩;每步群應(yīng)在訪有窮晌時間柄內(nèi)完跑成;確定游性:每條甩指令受都有摸確切歉含義瘦;算法喬只有且唯一削一條勸執(zhí)行儲路徑序,對渴相同湯輸入韻只能鎖得出脫相同臥輸出可行怕性:句算法辣中描徒述的抵操作中都可涌通過主已經(jīng)許實現(xiàn)殃的基本存運算執(zhí)行挺有限蒼次實閑現(xiàn);輸入傲:有盼0個屈或多圣個輸督入;輸出換:有撇一個命或多謠個輸崇出.算法與程序的區(qū)別?算法僵設(shè)計棄的要很求正確青性:設(shè)勾計或委選擇豎的算剩法能句滿足蹲具體股問題屬的需肌求.程序詠不含殃語法禾錯誤銀;程序偽對于碧幾組重輸入絕數(shù)據(jù)縣能夠昏得出拴滿足痕要求長的結(jié)雷果;對精爹心選熊擇帶已有刁午難性扶的幾區(qū)組數(shù)唉據(jù)能革得出扛滿足刑要求帥的結(jié)閱果;程序盛對于澤一切賺合法接的輸條入數(shù)類據(jù)都針能產(chǎn)菊生滿晨足要異求的縫結(jié)果陳??勺x傾性:健壯鐮性:當輸雙入數(shù)讓據(jù)非紐奉法時國,算案法能挎適當退地作抬出反鳴應(yīng)或傭進行鋸處理勞,保蛋證不至會產(chǎn)事生莫趕名其謙妙的今輸出杠結(jié)果臉。處理宴出錯雷的方文法是緞返回乎一個脂表示遙錯誤討或錯慢誤性頑質(zhì)的望值,繪以便憑在更壘高的恒抽象懂層次屋上進榆行處貴理,臟不應(yīng)劍中斷雕程序素的執(zhí)慢行。高效遼率和名低存啦儲量款需求:效率:算靜法執(zhí)飾行的馬時間存儲呢量需嫌求:算緒法執(zhí)暫行過果程中茶所需濟要的牲最大憂存儲周空間哈.兩者偏都與棗問題岸的規(guī)俱模有馬關(guān)。1.佩4.美3蝴算法門效率包的度笨量事后蒜統(tǒng)計挑:運用丸計算液機的妻計時伯功能割統(tǒng)計吼算法綿的運其行時住間缺陷僻:要書運行幟算法晚對應(yīng)紅的程廢序;時間睡統(tǒng)計螞結(jié)果擋依賴廊于計善算機化軟、鞠硬件睡環(huán)境愈;事前餡分析療估計和算愿法執(zhí)顛行時偵間相明關(guān)的洽因素鉗有:算法裂采用漏的策論略問題勁的規(guī)拔模書寫怕程序堂的語晴言編譯悅器產(chǎn)擾生的譯機器堤代碼澡的質(zhì)吳量計算盛機執(zhí)扎行指助令的呢速度隔。do灰ub僵lest贏ar妨t,庸s拐to治p;ti咬me恢(&st院ar帖t);in惰tk截=伙se淺ar哥ch敗_s惱eq誤(救ST商,k菊ey康);ti遇me登(&st雅op揀);do撓ub艱leru紀nT弦im演e拐=樹st護op騎-不s帖ta額rt;pr耽in刪tf柴(“盟%f板”,狼ru母nT醬im酒e)租;問題繳的規(guī)日模算法勉的時仔間量勻度算法腎=控開制結(jié)您構(gòu)+藥原操是作(面固有誰數(shù)據(jù)蓮類型殼的操灑作)從算革法中余選一洞種對幣所研療究問圖題來總說是基本廉操作的原伏操作鉛,以課該基乏本操頭作重淘復(fù)執(zhí)誤行次扭數(shù)作裁為算余法的乘時間浸量度豬。算法酷的漸住近時鄰間復(fù)集雜度撐:設(shè)算代法中煩基本敞操作驅(qū)重復(fù)黑執(zhí)行雅次數(shù)議是問中題規(guī)患模n萬的某換個函拍數(shù)f饅(n襲),籃算法駐的時笑間量憑度記殊作T姿(n詳)=習O(狹f(積n)育)蠻,表紙示隨攜問題猴規(guī)模酸n的綁增大孟,算喜法執(zhí)謹行時繳間的效增長肢率和麻f(眉n)宜的增稍長率嚴相同柔,稱等為算例法的蹄漸近昂時間昌復(fù)雜調(diào)度(依時間遺復(fù)雜全度)丟。算法迷時間巧復(fù)雜逮度的談大O憶表示罪法一甜般用失于算喘法在游最壞窗情況心下的員時間呆代價帆。算法的執(zhí)行時間=原操作i的執(zhí)行次數(shù)×原操作i的執(zhí)行時間原操臥作嶄vs園基游本操復(fù)作原操臨作:上固有校數(shù)據(jù)禮類型酸的操儉作,蔥比如恭整數(shù)銀的加決、減渴、乘浩、除障和取致模運己算?;菊聿僮骼媸鞘脖倜??也叫魔關(guān)鍵再操作勾,是無一種挨原操昌作,奴關(guān)鍵憤操作兩大都擺在循界環(huán)和癥遞歸牧中在多信層嵌估套的湊循環(huán)歷中,糊關(guān)鍵芬操作跨位于劇最內(nèi)評層循垮環(huán)中伯,例1程序段語句頻度時間復(fù)雜度{++x;s=0}@
for(i=1;i<=n;++i){++x;s+=x;}@for(i=1;i<=n;++i)for(j=1;j<=n;++j){++x;s+=x;}@i=1;while(i<=n)i=i*2;@1O(羅1)nO(駕n)n2lo拍g2nO(惑lo掙g2n)O(灰n2)語句重復(fù)執(zhí)行的次數(shù)在如標下算系法中堡:fo呢r(嘉i=惹1;香i<雙=n辯;+爸+i敘)fo室r(近j=散1;赴j扇<=登n;煎+緞+j吹){c[罷i]擊[j還]困=遷0;fo蒜r(呆k=濟1;物k興<=井n;舞+妄+k綢)c[袍i]書[j同]延+=終a都[i純][窄k]啞*本b梯[k烏][芬j]嚴;}例2問題團規(guī)模非:n基本艙操作述:c[冒i]掉[j押]收+=必a亂[i距][戀k]策*裹b悠[k柿][葉j]塘;基本喉操作弊重復(fù)姻執(zhí)行閑的次距數(shù):f(甩n)梯=嶼n3算法陵時間津復(fù)雜挎度:T(痛n)分=淋O議(f饞(n段))萍=許O消(n3)例3fo厲r(是i=貿(mào)2;數(shù)i<長=n姥;+材+i柄)fo顛r(堅j=創(chuàng)2;為j<纖=i賄-1婦;+船+j冰){角+回+x吵;a[佩i]貪[j澆]=種x;}問題是規(guī)模足:n原操鞠作:{弓++裹x;a[術(shù)i]雹[j樣]=單x;絨}基本耗操作寺重復(fù)瘡執(zhí)行逢的次測數(shù):難以找精確沙計算兔,量這階是摔n2算法筆時間貫復(fù)雜倡度:T(鈔n)扶=糊O愛(n2)問題袋規(guī)模鹿:n基本申操作汁:{a腦[j垮]<睡->附a[吃j+秧1]泥;c找ha柳ng體e=高TR攻UE涼;}基本且操作術(shù)重復(fù)舞執(zhí)行火的次攤數(shù):不定算法混時間暮復(fù)雜繁度:T(殖n)推=啄O匙(n2)例4vo范idbu舞bb植le寨_s滔or歌t(in騎ta[魯],in亭tn){錢f駱or板(i鮮=n鬧-1里,c瘦ha震ng毯e=駁TR牌UE踏;i篩>=床1,營ch芽an劣ge偉;-宏-i脆){桃ch曠an拳ge杠=F良AL晚SE悅;//傭判斷互是否全有相辣鄰元雅素交也換fo固r(股j=約0;網(wǎng)j<悉i;昂++才j)if(a挺[j捆]>滾a[畜j+稼1]椒){初a[略j]祝<-洋>a川[j沫+1案];ch華an切g(shù)e權(quán)=T槽RU羨E;手}}}時間悠復(fù)雜別度的求大O且表示欄法加法嚴規(guī)則例:設(shè)兩左個并列程序蛙段的費時間卻復(fù)雜政度分如別為控T1命(n賽)=爛O(杜f(摔n)洲)和立T2劫(m研)=盲O(職g(跟m)區(qū))時籮,兩蒜個程脖序段溉連在親一起盡后整艱個程搶序段篩的時耍間復(fù)驚雜度括為T(n,m)飼=暗T股1解(n)港+門T2移(m)=杠O(件m氧ax勵(f(n),g(m)住)曾)乘法皇規(guī)則徒:設(shè)兩柔個嵌套的程費序段宏的時逆間復(fù)扒雜度宮分別如為T招1(警n)井=O性(f連(n胳))巷和T暈2(急m)舍=O右(g廁(m呈))物時,欲整個刊程序顆段的削時間共復(fù)雜悉度為T普(n,m)味=厭T1贏(n)產(chǎn)*況T2轉(zhuǎn)(m)=貢O粘(f(n)止*g(m)砍)特例括:若T頁1(若n)故=O工(c防),況T2宵(n仰)=歡O(六f(穴n)弓)則T叢(n圍)=葛T列1(厘n)杯*擴T2營(n擔)=賞O(白c*辰f(頃n)真)=輩O挨(f籮(n灰))算法千設(shè)計誓、選稿取和綿時間劫復(fù)雜裂度分仍析的館原則應(yīng)該寶盡可帳能選郊用多掏項式鋤階O(地nk)的算侮法,娛不希毯望用恰指數(shù)瓶階算法華的時師間復(fù)鋒雜度蠻只考圓慮問管題規(guī)望模n的增章長率婚,在握難以世精確頓計算蝕基本侍操作儲執(zhí)行綠次數(shù)必時,昆只需舌求得勒它關(guān)粥于n的增長村率或階即可耐。算法麗中基退本操破作重最復(fù)執(zhí)疑行次甘數(shù)隨品問題喊的輸哀入數(shù)賽據(jù)集哥不同鵲而不判同,呆要考定慮最壞情況載下的辯時間業(yè)復(fù)雜謊度。例5百錢燭買百殿雞問羽題(胳1)雞翁揀一,默值錢孝五,勇雞母眉一,充值錢酷三,蟲雞雛頌三,愛值錢桃一,飽百錢賭買百歪雞,馬問雞爆翁、貫雞母饒、雞跑雛各玩幾何恢?解:府設(shè)雞忽翁、胃雞母蔑、雞朋雛分惹別為吳x,抖y想,犬z只地。則唇有:x摟+勇y辱+截z鑄=撇10懶05x揀+擠3榆y哈+戴z/尋3您=款10定0方法調(diào)1:fo籍r(蘇i=吳0;覽i<燦=1虜00攪;i目++犧)fo法r(訂j=竊0;斷j息<=槍10御0;庫j堵++氏)fo緒r(講k=啟0;市k唐<=季10藝0;去k+盞+){if視(k糠%3罪=義=0座&&股i+登j+銳k=殃=1晶00&&退5尾*i遷+3魚*j暫+k負/3戰(zhàn)==園10誤0)pr根in撫t(yī)f敞(“漏%d慰,%遺d,冰%d仗\n丘”,梢i詳,j娛,k艦);}方法意2:能用兩悔重循以環(huán):fo目r(糖i=達0;駝i<歇10辛0;您i+層+)fo略r(榴j=悅0;熱j<贊10彎0;考j+巨+){俗k=妥10盒0桐–i膠–由j晨;//小雞究的數(shù)和目可塘以由犁母雞抽數(shù)和腦公雞庭數(shù)得院到if禾(k獵%3攏==怨0禍&&痛5績*i選+3稈*j窮+k住/3卻==糟10繁0)pr化in婆tf煎(“符%d敢,%區(qū)d,喬%d失\n究”,戴i,翁j,旺k)壁;}方法欺3:耕用兩仰重循紡環(huán):fo秤r(霸i=谷0;項i<督=2棵0;渾i+隔+)//葬公雞奴數(shù)不胃可能蘋超過根20睬只fo翅r(跳j=汗0;飲j<尼33墓;j書++痕)//椒母雞顯數(shù)也撐不超巧過3煩3只{餐k朵=1蓬00蛙–腔i濤–j震;if瓶(k兄%3付==扇0輝&&拳5浩*i皇+3為*j鎖+k塑/3煉==煮10蜻0)pr藏in華tf應(yīng)(“滿%d鋼,%富d,筑%d額\n頓”,滲i,錯j,館k)臺;}例5百錢燦買百敢雞問急題(衛(wèi)2)例5百錢延買百宣雞問扒題(絹3)方法腦4:取用一抵重循運環(huán)由x畏+y哪+z否=找1院00不和5挨*x脆+3檢*y批+z數(shù)/3醉=1張00臂合并版為一限個方奏程:14黑*x增+8著*y范=打2腳00丙,竭進一疾步簡臘化為橡:村7*嚷x+鎮(zhèn)4*女y=嚴10融0x不葬超過卡14卡,并斤可以割進一記步判饒斷x寫必為季4的妥倍數(shù)盈,有夏:fo取r(亭i=緣瑞0;釀i<障=1館4;諷i+充=4封){帖j潔=斧(1耍00偽–甘7*絕i)不/4劃;k=塞10張0經(jīng)–i布–暢j;pr暑in湯tf幻玉(“
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025合同模板中央空調(diào)銷售合同范本
- 北京億歐網(wǎng)盟科技有限公司-新質(zhì)生產(chǎn)力系列:2025中國消費級AI硬件價值洞察及GEEK50榜單報告
- 2024年三年級道德與法治下冊 第四單元 多樣的交通和通信 11四通八達的交通第二課時說課稿 新人教版
- 2024年秋七年級地理上冊 第五章 世界的發(fā)展差異 5.2《國際經(jīng)濟合作》說課稿2 (新版)湘教版
- 9 古代科技 耀我中華(說課稿)2024-2025學年統(tǒng)編版道德與法治五年級上冊
- 養(yǎng)殖設(shè)備銷售合同范例
- 2024年一年級道德與法治上冊 第16課 我有一雙明亮的眼睛說課稿 未來版
- 9 種豆子 說課稿-2023-2024學年科學二年級下冊冀人版
- 出售電廠鍋爐合同范例
- 人員轉(zhuǎn)公司合同范例
- 投標廢標培訓
- 腦卒中課件完整版本
- 藥房保潔流程規(guī)范
- 電子信息工程基礎(chǔ)知識單選題100道及答案解析
- 血液透析器課件
- 吊車司機雇傭合同協(xié)議書
- 新華師大版八年級下冊初中數(shù)學全冊課時練(課后作業(yè)設(shè)計)
- 致命性大出血急救專家共識
- 住院成人高血糖患者血糖監(jiān)測醫(yī)護協(xié)議處方共識
- JTS-169-2017碼頭附屬設(shè)施技術(shù)規(guī)范
- DL-T5816-2020分布式電化學儲能系統(tǒng)接入配電網(wǎng)設(shè)計規(guī)范
評論
0/150
提交評論