2013年3月計算機二級VB考點指導(dǎo):算法

字號:

1.1算法
    考點1 算法的基本概念
    考試鏈接:
    考點1在筆試考試中考核的幾率為30%,主要是以填空題的形式出現(xiàn),分值為2分,此考點為識記內(nèi)容,讀者還應(yīng)該了解算法中對數(shù)據(jù)的基本運算。
    計算機解題的過程實際上是在實施某種算法,這種算法稱為計算機算法。
    1.算法的基本特征:可行性、確定性、有窮性、擁有足夠的情報。
    2.算法的基本要素:
    (1)算法中對數(shù)據(jù)的運算和操作
    一個算法由兩種基本要素組成:一是對數(shù)據(jù)對象的運算和操作;二是算法的控制結(jié)構(gòu)。
    在一般的計算機系統(tǒng)中,基本的運算和操作有以下4類:算術(shù)運算、邏輯運算、關(guān)系運算和數(shù)據(jù)傳輸。
    (2)算法的控制結(jié)構(gòu):算法中各操作之間的執(zhí)行順序稱為算法的控制結(jié)構(gòu)。
    描述算法的工具通常有傳統(tǒng)流程圖、N-S結(jié)構(gòu)化流程圖、算法描述語言等。一個算法一般都可以用順序、選擇、循環(huán)3種基本控制結(jié)構(gòu)組合而成。
    考點2 算法復(fù)雜度
    考試鏈接:
    考點2在筆試考試中,是一個經(jīng)常考查的內(nèi)容,在筆試考試中出現(xiàn)的幾率為70%,主要是以選擇的形式出現(xiàn),分值為2分,此考點為重點識記內(nèi)容,讀者還應(yīng)該識記算法時間復(fù)雜度及空間復(fù)雜度的概念。
    1.算法的時間復(fù)雜度
    算法的時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量。
    同一個算法用不同的語言實現(xiàn),或者用不同的編譯程序進(jìn)行編譯,或者在不同的計算機上運行,效率均不同。這表明使用絕對的時間單位衡量算法的效率是不合適的。撇開這些與計算機硬件、軟件有關(guān)的因素,可以認(rèn)為一個特定算法"運行工作量"的大小,只依賴于問題的規(guī)模(通常用整數(shù)n表示),它是問題規(guī)模的函數(shù)。即
    算法的工作量=f(n)
    2.算法的空間復(fù)雜度
    算法的空間復(fù)雜度是指執(zhí)行這個算法所需要的內(nèi)存空間。
    一個算法所占用的存儲空間包括算法程序所占的空間、輸入的初始數(shù)據(jù)所占的存儲空間以及算法執(zhí)行過程中所需要的額外空間。其中額外空間包括算法程序執(zhí)行過程中的工作單元以及某種數(shù)據(jù)結(jié)構(gòu)所需要的附加存儲空間。如果額外空間量相對于問題規(guī)模來說是常數(shù),則稱該算法是原地工作的。在許多實際問題中,為了減少算法所占的存儲空間,通常采用壓縮存儲技術(shù),以便盡量減少不必要的額外空間。
    疑難解答:算法的工作量用什么來計算?
    算法的工作量用算法所執(zhí)行的基本運算次數(shù)來計算,而算法所執(zhí)行的基本運算次數(shù)是問題規(guī)模的函數(shù),即算法的工作量=f(n),其中n是問題的規(guī)模。