本課程是數(shù)據(jù)科學與大數(shù)據(jù)技術(shù)的算法理論基礎(chǔ)和軟件設(shè)計的技術(shù)基礎(chǔ)課, 主要研究信息的邏輯結(jié)構(gòu)及其基本操作在計算機中的表現(xiàn)和實現(xiàn),。課程的任務(wù)是學會分析研究計算機加工的數(shù)據(jù)結(jié)構(gòu)的特性,;培養(yǎng)數(shù)據(jù)抽象的能力;訓練學生進行復雜程序設(shè)計的技能和培養(yǎng)良好程序設(shè)計的習慣,;初步掌握算法的時間分析和空間分析的技術(shù),。熟練掌握線性表(包括棧和隊列)的邏輯結(jié)構(gòu)定義的各種存儲結(jié)構(gòu)的描述方法;熟練掌握線性表在順序存儲結(jié)構(gòu)和各種鏈表結(jié)構(gòu)上的查找,、插入和刪除的算法,;掌握串的類型定義、表示與實現(xiàn); 掌握數(shù)組的兩種存儲表示方法及地址計算,;熟悉特殊矩陣和稀疏矩陣的壓縮存儲表示方法,、下標變換公式及適用范圍;掌握樹(包括二叉樹和森林)的定義,、性質(zhì),;熟練掌握二叉樹的結(jié)構(gòu)特性、遍歷的算法及若干典型的應(yīng)用,;熟悉圖(包括網(wǎng)絡(luò))的定義,、性質(zhì);掌握圖的各種存儲結(jié)構(gòu),、兩種遍歷策略及若干典型的應(yīng)用,;掌握順序表和有序表的查找方法; 掌握排序的定義和各種排序方法的特點;了解各種排序方法的排序過程及相應(yīng)的時間復雜度分析方法,;一般了解排序方法“穩(wěn)定”的含義,。