大话数据结构与算法:基础篇
生活随笔
收集整理的這篇文章主要介紹了
大话数据结构与算法:基础篇
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.數據結構的重要性
? ? ? ? 數據結構是計算機軟件相關專業的基礎課程,幾乎可以說,要想從事編程工作,無論是否是科班出身(比如我,標準的非科班人員,我是學醫的,哈哈)都不可以繞過數據結構與算法這部分知識。
? ? ? ? 數據結構是相互之間存在一種或多種特定關系的數據元素的集合。
? ? ? ? If you give someone a program,you will frustrate them for a day; if you teach them how to program,you will frustrate them for a lifetime.
2. 數據結構起源與基本概念
? ? ? ?數據結構是一門研究非數值計算的程序設計問題中的操作對象,以及他們之間的關系和操作的問題的學科。 ? ? ? ?程序設計 = 數據結構+算法2.1 數據
數據是描述客觀事物的符號,是計算機中可以操作的對象,是能被計算機識別,并輸入給計算機處理的符號集合。數據不僅僅包括整型、實型等數值類型,還包括字符及聲音、圖像、視頻等非數值類型。 比如我們現在常用的搜索引擎,一般會有網頁、MP3、圖片、視頻等的分類。MP3就是聲音數據,圖片當然是圖像數據,視頻就不用說了,而網頁其實指的就是全部數據的搜索,包括最重要的數字和字符等文字數據。所以,我們所談到的的數據,其實就是符號,這些符號應該具備兩個前提:1,可以輸入到計算機中;2,能被計算機程序處理;2.2數據元素
數據元素是組成數據的、有一定意義的基本單位,在計算機中通常作為整體處理,也被稱為記錄。2.3數據項
一個數據元素可以有若干個數據項組成。比如人這樣的數據元素,可以有眼、耳、鼻、嘴、手、腳這些數據項,也可以有姓名、年齡、行唄、出生地址。聯系電話等數據項,具體需要哪些數據項,需要根據我們所做的系統來決定。 數據項是數據不可分割的最小單位。2.4數據對象
數據對象是指性質相同的數據元素的集合,是數據的子集。3.數據結構分類
按照視點的不同,數據結構可以分為邏輯結構和物理結構。3.1邏輯結構
邏輯結構是指數據對象中數據元素之間的相互關系。這也是我們后階段最需要關注的問題。邏輯結構進一步可以細分為:幾何結構、線性結構、樹形結構、圖形結構。3.2物理結構
數據的物理結構也就是數據的存儲結構。物理結構指數據的邏輯結構在計算機中的存儲形式。數據是數據元素的集合,那么根據物理結構的定義,實際上就是如何把數據元素存儲到計算機的存儲器中。存儲器主要是針對內存而言的,想硬盤、軟盤、光盤等外部存儲器的數據組織通常用文件結構來描述。 數據元素的存儲結構形式有兩種:順序存儲和鏈式存儲。 順序存儲結構是把數據元素放在地址連續的存儲單元里,其數據間的邏輯關系和物理關系是一致的(C語言中的數組就是這樣的順序存儲結構)。 鏈式存儲結構是吧數據元素存放在任意的存儲單元中,這組存儲單元可以是連續的,也可以是不連續的。數據元素的存儲關系并不能反映其邏輯關系。因此需要用一個指針存放數據元素的地址。這樣,我們可以通過地址就可以找到相關聯數據元素的位置。 相對比之下,我們可以發現,鏈式存儲要比順序存儲靈活得多!數據存儲在哪里并不重要,只要有一個指針存放了相應的地址我們就可以找到它。4.抽象數據類型
數據類型是指一組性質相同的值得集合及定義在此集合上的一些操作的總稱。總結
以上是生活随笔為你收集整理的大话数据结构与算法:基础篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 飞秋_常用正则表达式集锦
- 下一篇: 大话数据结构与算法:算法初步1