第一章數(shù)據(jù)結構與算法
1.1 算法
算法:是指解題方案的準確而完整的描述。
算法不等于程序,也不等計算機方法,程序的編制不可能優(yōu)于算法的設計。
算法的基本特征:是一組嚴謹?shù)囟x運算順序的規(guī)則,每一個規(guī)則都是有效的,是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下終止。特征包括:
(1)可行性;
(2)確定性,算法中每一步驟都必須有明確定義,不充許有模棱兩可的解釋,不允許有多義性;
(3)有窮性,算法必須能在有限的時間內(nèi)做完,即能在執(zhí)行有限個步驟后終止,包括合理的執(zhí)行時間的含義;
(4)擁有足夠的情報。
算法的基本要素:一是對數(shù)據(jù)對象的運算和操作;二是算法的控制結構。
指令系統(tǒng):一個計算機系統(tǒng)能執(zhí)行的所有指令的集合。
基本運算和操作包括:算術運算、邏輯運算、關系運算、數(shù)據(jù)傳輸。
算法的控制結構:順序結構、選擇結構、循環(huán)結構。
算法基本設計方法:列舉法、歸納法、遞推、遞歸、減斗遞推技術、回溯法。
算法復雜度:算法時間復雜度和算法空間復雜度。
算法時間復雜度是指執(zhí)行算法所需要的計算工作量。
算法空間復雜度是指執(zhí)行這個算法所需要的內(nèi)存空間。
1.2 數(shù)據(jù)結構的基本基本概念
數(shù)據(jù)結構研究的三個方面:
(1)數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關系,即數(shù)據(jù)的邏輯結構;
(2)在對數(shù)據(jù)進行處理時,各數(shù)據(jù)元素在計算機中的存儲關系,即數(shù)據(jù)的存儲結構;
(3)對各種數(shù)據(jù)結構進行的運算。
數(shù)據(jù)結構是指相互有關聯(lián)的數(shù)據(jù)元素的集合。
數(shù)據(jù)的邏輯結構包含:
(1)表示數(shù)據(jù)元素的信息;
(2)表示各數(shù)據(jù)元素之間的前后件關系。
數(shù)據(jù)的存儲結構有順序、鏈接、索引等。
線性結構條件:
(1)有且只有一個根結點;
(2)每一個結點最多有一個前件,也最多有一個后件。
非線性結構:不滿足線性結構條件的數(shù)據(jù)結構。
相關推薦:2010年計算機等考二級公共基礎知識匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |