算法三種結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)和算法有什么關(guān)系?數(shù)據(jù)結(jié)構(gòu)就是算法嗎?
數(shù)據(jù)結(jié)構(gòu)和算法有什么關(guān)系?數(shù)據(jù)結(jié)構(gòu)就是算法嗎?數(shù)據(jù)結(jié)構(gòu)和算法在本質(zhì)上說和C語言沒有關(guān)系,C語言僅僅是描述工具而已,就像要講一個(gè)故事,可以用漢語,也可以用英語。數(shù)據(jù)結(jié)構(gòu)和算法同樣可以用java,用c#等
數(shù)據(jù)結(jié)構(gòu)和算法有什么關(guān)系?數(shù)據(jù)結(jié)構(gòu)就是算法嗎?
數(shù)據(jù)結(jié)構(gòu)和算法在本質(zhì)上說和C語言沒有關(guān)系,C語言僅僅是描述工具而已,就像要講一個(gè)故事,可以用漢語,也可以用英語。數(shù)據(jù)結(jié)構(gòu)和算法同樣可以用java,用c#等語言,甚至自然語言也可以描述。 數(shù)據(jù)結(jié)構(gòu)與算法是計(jì)算機(jī)科學(xué),具體的實(shí)現(xiàn)無非就是些數(shù)據(jù)交換和變化,這些交換和變化大都是在內(nèi)存中進(jìn)行的,而c/c 操作內(nèi)存的能力要強(qiáng)于其他語言(當(dāng)然匯編在操作內(nèi)存方面更強(qiáng),但離自然語言太遠(yuǎn),不易理解),所以學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法就常使用c/c 語言當(dāng)作描述工具。
程序框圖與算法的基本邏輯結(jié)構(gòu)課標(biāo)依據(jù)?
是算法的一種,又叫流程圖,是有一些規(guī)定的圖形和流程線組成,用來描述算法的圖形。 程序框圖中,圓角長(zhǎng)方形表示起、止框,平行四邊形表示輸入、輸出框,長(zhǎng)方形表示處理框、執(zhí)行框,用于賦值、計(jì)算,菱形表示判斷框,成立寫是或Y,不成立則寫否或N。 程序框圖的三種基本邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu). 順序結(jié)構(gòu)是最簡(jiǎn)單的結(jié)構(gòu),也是最基本的結(jié)構(gòu),循環(huán)結(jié)構(gòu)必然包含條件結(jié)構(gòu). 這三種基本邏輯結(jié)構(gòu)是相互支撐的,它們共同構(gòu)成了算法的基本結(jié)構(gòu),無論怎樣復(fù)雜的邏輯結(jié)構(gòu),都可以通過它們來表達(dá).. (1)三者的共同特點(diǎn) ?、僦挥幸粋€(gè)入口; ?、谥挥幸粋€(gè)出口. 菱形判斷框有兩個(gè)出口,而條件結(jié)構(gòu)只有一個(gè)出口,不要將菱形框的出口和條件結(jié)構(gòu)的出口混為一談; ?、劢Y(jié)構(gòu)內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行到. 即對(duì)每一個(gè)框來說都應(yīng)當(dāng)有一條從入口到出口的路徑通過它; ?、芙Y(jié)構(gòu)內(nèi)不存在死循環(huán). 在程序框圖中不允許有死循環(huán)出現(xiàn). ?。?)三者的比較 ①順序結(jié)構(gòu)在程序框圖中的體現(xiàn)是用流程線將程序框自上而下地連接起來,按順序執(zhí)行算法步驟; ?、跅l件結(jié)構(gòu)在程序框圖中是用判斷框來表示,判斷框內(nèi)寫上條件,兩個(gè)出口分別對(duì)應(yīng)著條件滿足和條件不滿足時(shí)所執(zhí)行的不同指令; ?、垩h(huán)結(jié)構(gòu)在程序框圖中是利用判斷框來表示,判斷框內(nèi)寫上條件,兩個(gè)出口分別對(duì)應(yīng)著條件成立和條件不成立時(shí)所執(zhí)行的不同指令,其中一個(gè)要指向循環(huán)體,然后再?gòu)难h(huán)體回到判斷框的入口處. ?。?)三者各自的特點(diǎn) ?、夙樞蚪Y(jié)構(gòu)的特點(diǎn)是:算法按照書寫順序執(zhí)行; ?、跅l件結(jié)構(gòu)的特點(diǎn)是:算法中需要進(jìn)行判斷,判斷的結(jié)果決定后面的步驟; ③循環(huán)結(jié)構(gòu)的三個(gè)要素:循環(huán)變量、循環(huán)體和循環(huán)終止條件. ?。?)條件結(jié)構(gòu)與循環(huán)結(jié)構(gòu)的區(qū)別與聯(lián)系 區(qū)別:循環(huán)結(jié)構(gòu)有重復(fù)性,條件結(jié)構(gòu)具有選擇性、不重復(fù); 聯(lián)系:循環(huán)結(jié)構(gòu)中必定包含一個(gè)條件結(jié)構(gòu),用以判斷循環(huán)的條件.