導語:計算機解題的過程實際上是在實施某種算法,這種算法稱爲計算機算法。下面是關於計算機二級《公共基礎》知識點算法的介紹,歡迎參考!
第數據結構與算法
經過對部分考生的調查以及對近年真題的總結分析,筆試部分經常考查的是算法複雜度、數據結構的概念、棧、二叉樹的遍歷、二分法查找,讀者應對此部分進行重點學習。
算法
考點1 算法的基本概念
考試鏈接:
考點1在筆試考試會考核的機率爲30%,主要是以填空題的形式出現,分值爲2分,此考點爲識記內容,讀者還應該瞭解算法中對數據的基本運算。
計算機解題的過程實際上是在實施某種算法,這種算法稱爲計算機算法。
1.算法的基本特徵:可行性、確定性、有窮性、擁有足夠的情報。
2.算法的基本要素:
(1)算法中對數據的運算和操作
一個算法由兩種基本要素組成:一是對數據對象的運算和操作;二是算法的控制結構。
在一般的計算機系統中,基本的運算和操作有以下4類:算術運算、邏輯運算、關係運算和數據傳輸。
(2)算法的控制結構:算法中各操作之間的執行順序稱爲算法的控制結構。
描述算法的工具通常有傳統流程圖、N-S結構化流程圖、算法描述語言等。一個算法一般都可以用順序、選擇、循環3種基本控制結構組合而成。
考點2 算法複雜度
考試鏈接:
考點2在筆試考試中,是一個經常考查的內容,在筆試考試中出現的機率爲70%,主要是以選擇的形式出現,分值爲2分,此考點爲重點識記內容,讀者還應該識記算法時間複雜度及空間複雜度的概念。
1.算法的時間複雜度
算法的時間複雜度是指執行算法所需要的計算工作量。
同一個算法用不同的'語言實現,或者用不同的編譯程序進行編譯,或者在不同的計算機上運行,效率均不同。這表明使用絕對的時間單位衡量算法的效率是不合適的。撇開這些與計算機硬件、軟件有關的因素,可以認爲一個特定算法"運行工作量"的大小,只依賴於問題的規模(通常用整數n表示),它是問題規模的函數。即
算法的工作量=f(n)
2.算法的空間複雜度
算法的空間複雜度是指執行這個算法所需要的內存空間。
一個算法所佔用的存儲空間包括算法程序所佔的空間、輸入的初始數據所佔的存儲空間以及算法執行過程中所需要的額外空間。其中額外空間包括算法程序執行過程中的工作單元以及某種數據結構所需要的附加存儲空間。如果額外空間量相對於問題規模來說是常數,則稱該算法是原地工作的。在許多實際問題中,爲了減少算法所佔的存儲空間,通常採用壓縮存儲技術,以便儘量減少不必要的額外空間。