信息學(xué)奧賽系列教程:算法和程序

算法的概念:

? ? ??算法是解決問(wèn)題的步驟的描述。

算法的描述:

? ? ? 可以采用自然語(yǔ)言,程序流程圖,計(jì)算機(jī)程序描述算法。

? ? ? 以計(jì)算圓的周長(zhǎng)和面積為例

采用自然語(yǔ)言描述為:

1、開(kāi)始

2、輸入半徑R

3、周長(zhǎng)L = 2*3.14*R

4、面積S = 3.14 *R*R

5、輸出周長(zhǎng)L,面積S

6、結(jié)束

程序流程圖描述算法:



采用C++語(yǔ)言描述:

#include <iostream>

using namespace std;

int main()

{

int R,L,S;? ? ?

cin>>R;? ? ? ? ?

L = 2* 3.14* R;?

S = 3.14 * R * R;

cout<<L<<endl;? ?

cout<<S<<endl;? ?

return 0;?

}

算法的主要特點(diǎn):

可行性:整個(gè)問(wèn)題可以被分解為一個(gè)或多個(gè)步驟

確定性:每個(gè)步驟有確定的定義,不允許歧義、多義

有窮性:算法必須在指定步驟內(nèi)完成

輸入項(xiàng):一個(gè)算法有0個(gè)或多個(gè)輸入,0輸入時(shí)算法給定條件。

輸入項(xiàng):一個(gè)算法至少有1個(gè)或多個(gè)輸出

衡量算法的指標(biāo):

時(shí)間復(fù)雜度:解決問(wèn)題需要的時(shí)間長(zhǎng)短,是一個(gè)函數(shù)O(f(n))

空間復(fù)雜度:解決問(wèn)題需要用到的計(jì)算機(jī)內(nèi)存空間大小

算法相關(guān)的題目:

1.算法是指()

A.為解決問(wèn)題而編制的計(jì)算機(jī)程序

B.為解決問(wèn)題而采取的方法和步驟

C.為解決問(wèn)題而需要采用的計(jì)算機(jī)語(yǔ)言

D.為解決問(wèn)題而采用的計(jì)算方法

2.下面關(guān)于算法的錯(cuò)誤說(shuō)法是()

A.算法必須有輸出 ?

B.算法必須在計(jì)算機(jī)上用某種語(yǔ)言實(shí)現(xiàn)

C.算法不一定有輸入

D.算法必須在有限步執(zhí)行后能結(jié)束

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容