|
友情提示:本站提供全國400多所高等院校招收碩士、博士研究生入學考試歷年考研真題、考博真題、答案,部分學校更新至2012年,2013年;均提供收費下載。 下載流程: 考研真題 點擊“考研試卷””下載; 考博真題 點擊“考博試卷庫” 下載
2020年西北師范大學
1 碩士研究生入學統一考試 《程序設計與數據結構》科目大綱 (科目代碼:821) 學院名稱(蓋章):計算機科學與工程學院 學院負責人(簽字): 藺想紅 編 制 時 間: 2019 年 6 月 24 日 2 《程序設計與數據結構》科目考試大綱 (科目代碼:821) 一、考核要求 《程序設計》、《數據結構》兩門課程均是計算機類專業的核心課程。學習 程序設計課程的主要目的是培養學生編寫程序的基本能力以及計算思維,掌 握程序設計語言(C 或 C++)的基本成分、語法規則等基本知識,建立起結構 化程序設計思想和方法,為以后系統學習其他專業課程奠定基礎。 用計算機解決一個復雜工程問題,需要將反映問題的數據信息存入計算 機,并設計能解決問題的算法。數據結構就是回答計算機如何存儲各種數據 及數據之間的關系,以及對數據做基本處理的算法實現。要求考生比較系統 地理解數據結構的基本概念和基本理論,掌握常用數據結構及其基本算法, 具有綜合運用數據結構知識解決問題的能力。 《程序設計與數據結構》的考核分為程序設計和數據結構兩部分,分值各 占 50%。程序設計部分考核學生對結構化程序設計方法和編程語言的掌握情 況以及獨立編程的能力;數據結構部分考核學生對常用數據結構以及相關基 本算法的掌握和運用能力。 二、考核評價目標 考核評價目標應使錄取的研究生較好地掌握 C或 C++程序設計語言和數據 結構,具有程序設計能力及分析與解決問題的能力,為以后從事的研究、開 發工作提供必要的軟件基礎和基本技能。而對程序設計的具體編程語言、數 據結構的定義和算法描述語言,學生既可以選擇 C,也可以選擇 C++。 3 三、考核內容 程序設計部分(分值比例:50%) 第一章 程序基本知識與簡單程序設計 【考試內容】 C 或 C++程序的基本知識、簡單程序的設計。 【考試要求】 (1)理解 C 或 C++程序的基本構成,變量的定義與變量名的基本規則; (2)掌握 C 或 C++數據類型;宏常量、const 常量的定義等; (3)掌握算術表達式、賦值表達式與逗號表達式等;數據的輸入與輸出。 第二章 選擇控制結構 【考試內容】 條件選擇語句 if 和 switch 的語法及其應用。 【考試要求】 (1)理解 if 語句與條件表達式的區別、switch 語句的執行流程; (2)掌握 if 語句與 switch 語句在程序中的使用。 第三章 循環控制結構 【考試內容】 for、while、do-while 三種循環控制語句的語法特點和應用。 【考試要求】 (1)理解 for、while、do-while 語句的執行流程及其循環條件表達式 的作用和它們在循環控制上的區別; (2)掌握 break 與 continue 語句的區別與應用; 4 (3)能熟練地用三種循環語句進行循環程序設計。 第四章 函數 【考試內容】 C 或 C++中函數的定義和使用。 【考試要求】 (1)掌握函數的定義、向函數傳遞值和從函數返回值的過程; (2)熟練掌握在程序設計中正確使用函數;對于已知的遞歸算法,能寫 出相應的遞歸程序; (3)理解全局變量與局部變量、變量的生存期與作用域、變量的動態與 靜態存儲方式等的區別; (4)理解模塊化程序設計的原則與思想,了解在多個程序文件中函數與 函數的關系。 第五章 數組 【考試內容】 一維和二維數組的定義及其應用。 【考試要求】 (1)理解一維數組與二維數組的地址結構、字符串的結束標志; (2)掌握常用的幾個字符串函數; (3)掌握在程序設計中應用一維數組、二維數組、字符串; (4)掌握對數組進行簡單排序和查找的方法; (5)理解數組做函數參數的程序設計。 第六章 指針 5 【考試內容】 C 或 C++中指針的概念、定義、運算和應用。 【考試要求】 (1)理解一維數組與二維數組的地址結構; (2)理解返回指針的函數與函數指針的區別; (3)理解指針數組、數組指針、指向指針的指針之間的關系與區別; (4)理解指針運算的用途和意義; (5)掌握在程序中利用指針操作數組元素、字符串,以及用指針作函數 參數;掌握在程序中應用指針數組。 第七章 結構體、共用體和枚舉類型數據 【考試內容】 結構體、共用體、枚舉等自定義數據類型的定義和運用。 【考試要求】 (1)理解結構體與共用體的區別; (2)掌握結構體、共用體、枚舉類型數據的應用,會用 typedef 定義結 構體、共用體等數據類型別名。 第八章 預處理命令 【考試內容】 C 或者 C++中預處理命令的使用。 【考試要求】 (1)理解執行預處理命令的時機、宏定義替換規則; (2)了解帶參宏定義與函數的區別。 6 第九章 位運算 【考試內容】 位運算的概念及其應用。 【考試要求】 (1)理解位運算的概念、位段的概念; (2)理解如何在程序中應用位運算。 第十章 文件 【考試內容】 文件的打開和讀取。 【考試要求】 (1)理解文件指針的概念和定義; (2)掌握文件的打開方法、文件打開函數返回值的處理; (3)掌握在程序中讀寫外部的文本文件或者二進制文件的方法。 數據結構部分(分值比例:50%) 第一章 基本概念 【考試內容】 數據結構的基本概念;算法及算法分析方法。 【考試要求】 (1)掌握數據結構的概念,包括數據的邏輯結構、存儲結構、算法的概 念,以及它們之間的關系; (2)掌握算法復雜度分析方法,能夠估算算法的時間復雜度和空間復雜 度。 7 第二章 線性表 【考試內容】 線性表的特點,線性表的順序實現和鏈式實現,線性表的應用。 【考試要求】 (1)理解線性表的結構和特點,掌握線性表上基本操作的實現算法; (2)掌握順序存儲線性表的方法以及基本操作的實現算法; (3)掌握鏈接存儲線性表的方法,并掌握單鏈表和循環鏈表的結構,以 及基本操作的實現算法。 第三章 棧和隊列 【考試內容】 棧和隊列的基本運算及其應用。 【考試要求】 (1)理解棧的定義和結構特點,掌握其存儲方式(順序存儲和鏈接存儲) 和基本操作的實現算法; (2)理解隊列的結構和特點,掌握其存儲方式(順序存儲和鏈接存儲) 和基本操作的實現算法; (3)理解遞歸的基本概念和實現原理,掌握用遞歸思想描述問題和構造 算法的方法,以及棧與遞歸的實現。 第四章 串 【考試內容】 串的表示、實現及其應用。 【考試要求】 8 (1)理解串類型的定義,掌握字符串的存儲結構,字符串的基本運算; (2)掌握字符串模式匹配算法及簡單應用。 第五章 數組和廣義表 【考試內容】 數組和廣義表的基本概念、存儲及簡單應用。 【考試要求】 (1)理解數組的定義,數組的順序表示和實現,以及矩陣的壓縮存儲; (2)理解廣義表的定義,廣義表的存儲結構。 第六章 樹和二叉樹 【考試內容】 樹和二叉樹。 【考試要求】 (1)理解樹的結構和定義,掌握樹的主要概念; (2)理解各種二叉樹的定義、性質與存儲結構,掌握其特點; (3)掌握二叉樹遍歷方法的實現原理和性質,能將二叉樹的遍歷方法應 用于求解二叉樹的葉子結點個數。二叉樹計數等問題,掌握遍歷的非遞歸實 現方法。 (4)理解樹的存儲結構,掌握森林與二叉樹的轉換,樹和森林的遍歷方 法; (5)理解赫夫曼樹的基本原理、實現及應用。 第七章 圖 【考試內容】 9 圖的存儲,圖的遍歷,最小生成樹,活動網絡和最短路徑。 【考試要求】 (1)掌握圖的基本概念、圖的存儲結構; (2)掌握圖的深度優先遍歷和廣度優先遍歷方法; (3)理解圖的連通性問題,掌握最小生成樹的方法等; (4)有向無環圖及其應用,掌握 AOV 活動網絡的拓撲排序方法,AOE 活 動網絡的關鍵路徑的方法; (5)掌握最短路徑的方法。 第八章 集合和查找 【考試內容】 集合、靜態查找表、動態查找表和哈希表。 【考試要求】 (1)理解集合的基本概念,掌握常用實現集合的各種存儲方法; (2)掌握順序表的查找、有序表的查找、靜態樹表的查找及索引順序表 的查找; (3)理解二叉排序樹和平衡二叉樹,了解 B 樹和 B+樹。 (4)理解哈希表的實現原理,能按指定的哈希函數和解決沖突的方法構 造哈希表。 第九章 排序 【考試內容】 插入排序、交換排序、選擇排序、歸并排序和基數排序等。 【考試要求】 10 理解各種排序方法的實現,掌握各種排序算法的特點和時間復雜度,能 按指定的排序方法實現對數據做排序。 四、 參考書目 1、《C 語言程序設計》(第 3 版),蘇小紅、王宇穎、孫志崗等編著,高 等教育出版社,2015. 2、《數據結構(C 語言版)》,嚴蔚敏、吳偉民編著,清華大學出版社, 1997.
免責聲明:本文系轉載自網絡,如有侵犯,請聯系我們立即刪除,另:本文僅代表作者個人觀點,與本網站無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
|
|
|
上一篇文章: 2020年西北師范大學820電子技術考研大綱碩士研究生入學考試大綱
下一篇文章: 2020年西北師范大學824旅游學原理考研大綱碩士研究生入學考試大綱
|
|
|
|
|
|