【数据结构】绪论部分
今天由我來跟大家講一下數據結構的緒論部分吧。數據結構整體復習主要靠理解。理解了學習起來其實是很輕松的事情,學進去了你也會發現很好玩。這篇只是個結構概括,理解就行。
?
1.1 基本概念
?
? ?1、數據:即信息。
? ?2、數據元素:數據的基本單位。如:一個學生記錄就是一個數據元素,由學號、姓名等數據項構成(數據項為構成數據元素的不可分割的最小單位)。
? ?3、數據對象:相同性質的數據元素集合。數據的子集。
? ?4、數據類型:一個值的集合和在此集合上一組操作的總稱。
? ?5、抽象數據類型:ADT。一個模型和在此模型上的一組操作。
? ?6、數據結構:三要素:邏輯結構+存儲結構+數據運算。
? ?
? ?
? ?數據結構三要素
?
? ?1、邏輯結構:數據元素之間的邏輯關系,解決的是兩個元素時間是什么關系這個問題。有線性和非線性兩大類。
? ?
? ?2、存儲結構:即物理結構,解決的是物理實現的問題。一般由4類,嚴蔚敏老師的書里好像只提到了倆。
? ?
? ?3、數據運算:包括運算的定義和實現。定義針對邏輯結構,運算針對存儲結構。
? ?
?
1.2 ?算法及評價
?
? ? 1、性質:有窮性、確定性、可行性、輸入、輸出。
? ? 2、目標:正確性、可讀性、健壯性、時空效率。
? ??
? ? 算法評估
? ??
? ? 通過時間復雜度O(n)、空間復雜度S(n)體現。這兩個通常會和后面各種排序算法比較中用到。
? ??
? ? O(n)一般由最深層循環原子操作的次數得出。考點之一。
? ? 兩條規則:
????????????????a、加法規則--用于并列
? ? ? ? ? ? ? ? b、乘法規則--用于嵌套
? ? ? ? ? ? ??
? ? O(1) < O(log n) < O(nlog n) < O(n2) < O(n3) < O(2^n) < O(n!) < O(n^n) ? ?
?
? ? S(n)為所需的輔助額外空間。
? ? 這里注意一個原地工作不是指不需要輔助空間,而是其相對輸入和程序本身所占空間來說為常量。
?
來張大圖:
? ?
? ?
? ?
?
轉載于:https://www.cnblogs.com/robin2ML/p/6863232.html
總結
以上是生活随笔為你收集整理的【数据结构】绪论部分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux:gpg加密和解密
- 下一篇: Bootstrap学习之二:栅格化布局