1. 什麼是數據結構
數據結構是計算機存儲、組織數據的方式。數據結構是指相互之間存在一種或多種特定關系的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高的運行或者存儲效率。數據結構往往同高效的檢索演算法和索引技術有關。
名詞定義
數據結構是指相互之間存在著一種或多種關系的數據元素的集合和該集合中數據元素之間的關系組成。記為:
Data_Structure=(D,R)
其中D是數據元素的集合,R是該集合中所有元素之間的關系的有限集合。
其它定義
Sartaj Sahni在他的《數據結構、演算法與應用》一書中稱:「數據結構是數據對象,以及存在於該對象的實例和組成實 例的數據元素之間的各種聯系。這些聯系可以通過定義相關的函數來給出。」他將數據對象(data object)定義為「一個數據對象是實例或值的集合」。
Clifford A.Shaffer在《數據結構與演算法分析》一書中的定義是:「數據結構是ADT(抽象數據類型Abstract Data Type) 的物理實現。」
Robert L.Kruse在《數據結構與程序設計》一書中,將一個數據結構的設計過程分成抽象層、數據結構層和實現層。其中,抽象層是指抽象數據類型層,它討論數據的邏輯結構及其運算,數據結構層和實現層討論一個數據結構的表示和在計算機內的存儲細節以及運算的實現。
數據結構具體指同一類數據元素中,各元素之間的相互關系,包括三個組成成分,數據的邏輯結構,數據的存儲結構和數據運算結構。
2. 數據架構(data architecture)是什麼意思
你好,看看這個參考吧。
數據結構是在整個計算機科學與技術領域上廣泛被使用的術語。它用來反映一個數據的內部構成,即一個數據由那些成分數據構成,以什麼方式構成,呈什麼結構。數據結構有邏輯上的數據結構和物理上的數據結構之分。邏輯上的數據結構反映成分數據之間的邏輯關系,而物理上的數據結構反映成分數據在計算機內部的存儲安排。數據結構是數據存在的形式。 數據結構是信息的一種組織方式,其目的是為了提高演算法的效率,它通常與一組演算法的集合相對應,通過這組演算法集合可以對數據結構中的數據進行某種操作。
數據結構課程的主要目的是介紹一些常用的數據結構,闡明數據結構內在的邏輯關系,討論它們在計算機中的存儲表示,並結合各種數據結構,討論對它們實行的各種運算的實現演算法。很多演算法實際上是對某種數據結構施行的一種變換,研究演算法也就是研究在實施變換過程中數據結構的動態性質。
問:我對此題產有疑義!將F=1+1/2+1/3+……+1/n用遞歸函數編程!
徐孝凱:是遞歸問題,請仔細琢磨。
問:數據結構太不好學了
殷人昆:數據結構需要下工夫,必須作題,這與其他課程的規律都一樣。重點把各種結構的定義、特點,存儲表示搞清楚,對每一種結構的實現方法有所了解,考試時的基本分數就有了。書上的演算法的思路要掌握,它給出解決問題的方法。
問:數據結構我已經考了兩次了,還是沒有過關。不知道有沒有什麼竅門?請有心得的朋友指點一下,非常感激。
殷人昆:可能你過去程序設計的基礎沒有打好,所以繼續學習就會發生困難。現在考試的重點在基本概念的理解和基本結構的構造和分析,對演算法編寫要求的比重不太高。如果基本概念和各種數據結構的基本特點也不清楚,考試必然不合格。努力把書本看一遍,該記的記,該背的背。考試的范圍比較大,不好劃重點。
問:我們是貴州電大貴陽分校的幾位學生,我們今年已是第五次考數據結構了,但我們已有2年沒有得到中央電大的《期末復習指導》了,不知現在的考試要求是什麼,若能為我們提供該資料,我們將萬分感謝!
徐孝凱:請到該課程網頁上查找。
問:數據結構的考試重點在那?
徐孝凱:請注意以下復習:
1.該課程期末復習指導
2.該課程形成性作業
3.該課程實驗教材後面附錄中的綜合練習題
4.該課程中央電大網頁上發表的各種題型的綜合練習題。
問:程序步數的計算要注意些什麼?
殷人昆:注意掌握每一類型語句的基本程序步數,再學會統計程序中各個語句的執行頻度,就可以計算出程序的總程序步數。
問:稀疏矩陣一般用在什麼情況下?
殷人昆:稀疏矩陣主要用在工程和科學計算中,例如,在做大壩的結構計算時,用有限元法將整個大壩劃分成三角網格,在每一個節點上列出方程。經過一系列變換,最後形成一個大型稀疏系數線性方程組,其系數矩陣即為稀疏矩陣。此外,在解電路問題也會遇到稀疏矩陣。因此,稀疏矩陣的表示和計算有其工程背景。
tlddcl:教課書上P220頁習題六一題6小題由權值分別為3,8,6,2,5的葉子結點生成一棵哈夫曼樹,它的帶權路徑長度為( )A.24 B.48 C.72 D.51
我計算應為55而中央電大期未復習中同樣題選的D.53 不知應為多少
賀桂英:經過我的計算,這棵哈夫曼樹的帶權路徑長度應為:53
可能是選擇題的答案印刷有誤!
tlddcl:能將運算式子寫出來
賀桂英:ASL=(2+3)*3+(5+6+8)*2=53
徐孝凱:謝謝賀老師回答。
賀桂英:構造的哈夫曼樹在附件中!
ASL=(2+3)*3+(5+6+8)*2=53
tlddcl:按你的計算式子5,6,8三個葉子結點應在一個層上呀
賀桂英:請問徐老師:B_樹的插入與刪除還作考核要求嗎?對於 B_樹的插入、刪除,學生們學起來有些困難,這部分是否作為本次考試的內容?
徐孝凱:基本不做要求,考核較多的是B_的概念,即B_樹的結構特點。
賀桂英:徐老師:排序演算法太多,關於希爾排序我沒時間給學生講解,這部分是否作為考核內容?
徐孝凱:不做為考核要求,因為它不是一個好的排序演算法。
賀桂英:外排序的內容是否要求掌握?
徐孝凱:只有很少一些概念是要求的,如最佳歸並樹的概念,不過可以放棄,因為涉及的分數很少。
問:求廣義表的表頭與求它的第一個元素是一回事嗎?
賀桂英:我的理解是一樣的.廣義表的演算法比較難,應該不作考核要求的.
徐孝凱:賀老師回答是對的,關於廣義表的表頭和表尾的知識,有時作為概念來考核。
問:已知三叉樹的結點個數,怎麼求它的最小和最大深度?
賀桂英:對了,這是一個值得探討的問題!請問徐老師:三叉樹中是否至少有一個結點的度為3才行?
徐孝凱:在專科數據結構教材中介紹樹的性質時,給出了樹的結點數與最小深度的關系,其最大深度應等於其結點數,不一定非得存在度為3的結點。
問:老師,你好。我是廣西電大桂林電大的一名01級學生,我覺得這門課程很難考,考了4次,每次都差那麼幾分,雖然專科時也是這個專業,但卻很難考,有什麼好的資料嗎
徐孝凱:請多練習該課程實驗教材後面的綜合練習題。
賀桂英:我個人覺得:作業和實驗指導書後的綜合練習題很重要!
徐孝凱:這學期新增加了網上教學綜合練習題輔導文章。在該課程的中央電大網頁上的教學輔導專欄中,新發表有期末綜合練習題,請注意參考。
問:該課是否有模擬題型?望指導。
徐孝凱:請注意以下復習:
1.該課程期末復習指導
2.該課程形成性作業
3.該課程實驗教材後面附錄中的綜合練習題
4.該課程中央電大網頁上發表的各種題型的綜合練習題。
問:什麼是數據結構
殷人昆:數據結構是所要處理的數據元素之間的關系,這些數據元素依據這種關系構成適合各種問題求解的數據表示。
問:數據結構的抽象層次
殷人昆:數據結構分邏輯結構和存儲結構。邏輯結構是面向問題的,存儲結構是邏輯結構的存儲表示。通常所說的「數據結構」是指數據的邏輯結構,包括線性結構(線性表)和非線性結構(樹、圖、多維數組、廣義表),存儲結構包括一維數組、鏈接表、索引表、散列表。
問:廣義表的遞歸演算法
殷人昆:廣義表的讀歸演算法看書。不知你要問什麼問題?是否希望知道重點?
問:老師你講的這資料「課程實驗教材後面的綜合練習題和驗指導書後的綜合練習題」我們都沒有。在哪找到?
殷人昆:中央廣播電視大學出版社出版的「數據結構實驗(本科)」中有,請購買。
徐孝凱:該課程的實驗教材由中央廣播電視大學出版社出版
教材名稱為「數據結構實驗(本科),徐孝凱、殷人昆編著,中央廣播電視大學出版社出版,聯系電話為:010-68214437轉發行部
問:圖的基本概念
徐孝凱:請看書。
問:數據結構基本概念
徐孝凱:請看實驗教材後面的練習題。
問:求一個演算法的時間復雜度應該從哪幾個方面來算
徐孝凱:主要看循環體執行的次數。
問:排序的演算法考試是否作要求?
徐孝凱:一般考方法的情況較多,考演算法的情況較少。 試題范圍同實驗教材後的練習題,請注意分析可知。
問:簡單的搜索結構
徐孝凱:此概念較模糊,簡單的搜索應該是順序搜索。
問:抽象數據類型及面向對象概念
徐孝凱:看書第一章
殷人昆:答疑時間到,請大家把書多看幾遍,再見!
3. 到底什麼是數據結構
就是合理的組織數據的存儲方式,來達到快速的插入,刪除,查詢數據等操作
比如用數組,刪除一個元素需要把後面的東西全挪前面來,這樣耗時就很高
如果數組很大,沒准做幾十次就花費數秒時間了
如果用紅黑樹,就可以非常快速的刪除了,幾十次操作也許只有幾毫秒甚至更少,不僅是刪除,插入和查詢等都很快
總之數據結構用處很大
4. 什麼叫數據架構呢
數據中心是使用復雜的網路、計算和存儲系統來提供對應用程序和數據的共享訪問的設施。行業標準的存在有助於設計、構建和維護數據中心設施和基礎設施,以確保數據的安全性和可用性。
數據中心架構組件
計算、存儲和網路是數據中心中使用的三種主要組件類型。然而,在現代數據中心中,這些組件只是冰山一角。從表面上看,支持基礎設施對於企業數據中心實現服務水平協議的能力至關重要。
數據中心計算
數據中心的生成器是伺服器。在邊緣計算模型中,用於在伺服器上運行應用程序的處理和內存可能是虛擬化的、物理的、分布在容器之間或分布在遠程節點之間。通用cpu可能不是解決人工智慧(AI)和機器學習(ML)問題的最佳選擇,所以數據中心必須使用最適合這項任務的處理器。
數據中心存儲
出於自身的目的和客戶的需要,數據中心保存著大量的機密數據。減少的存儲介質成本增加了數據備份可用的存儲量,無論是本地、遠程還是兩者兼有。由於非易失性存儲介質的進步,數據訪問時間越來越快。此外,就像其他軟體定義的東西一樣,軟體定義的存儲技術在管理數據中心存儲系統時提高了人員的生產力。
數據中心網路
布線、交換機、路由器和防火牆都是數據中心網路設備的例子,這些設備將伺服器彼此連接起來,也將伺服器與外界連接起來。如果設計和組織得當,它們可以在不犧牲效率的情況下處理大量的流量。典型的三層網路拓撲結構包括數據中心邊緣的核心交換機(該交換機將數據中心與Internet連接)和中間聚合層(該聚合層將核心層與接入層結合起來,該接入層承載著伺服器)。由於超大規模網路安全和軟體定義的網路等創新,現設數據中心網路提供雲級的移動性和可伸縮性。
5. 數據架構是什麼
數據架構即資料庫架構
資料庫是相關數據的集合,一個資料庫含有各種成分,包括表、記錄、欄位、索引等。
1.資料庫(Database)
Visual Basic中使用的資料庫是關系型資料庫(Relational Database)。一個資料庫由一個或一組數據表組成。每個資料庫都以文件的形式存放在磁碟上,即對應於一個物理文件。不同的資料庫,與物理文件對應的方式也不一樣。對於dBASE,FoxPro和Paradox格式的資料庫來說,一個數據表就是一個單獨的資料庫文件,而對於Microsoft Access、Btrieve格式的資料庫來說,一個資料庫文件可以含有多個數據表。
2.數據表(Table)
簡稱表,由一組數據記錄組成,資料庫中的數據是以表為單位進行組織的。一個表是一組相關的按行排列的數據;每個表中都含有相同類型的信息。表實際上是一個二維表格,例如,一個班所有學生的考試成績,可以存放在一個表中,表中的每一行對應一個學生,這一行包括學生的學號,姓名及各門課程成績。
3.記錄(Record)
表中的每一行稱為一個記錄,它由若干個欄位組成。
4.欄位(Field)
也稱域。表中的每一列稱為一個欄位。每個欄位都有相應的描述信息,如數據類型、數據寬度等。
5.索引(Index)
為了提高訪問資料庫的效率,可以對資料庫使用索引。當資料庫較大時,為了查找指定的記錄,則使用索引和不使用索引的效率有很大差別。索引實際上是一種特殊類型的表,其中含有關鍵欄位的值(由用戶定義)和指向實際記錄位置的指針,這些值和指針按照特定的順序(也由用戶定義)存儲,從而可以以較快的速度查找到所需要的數據記錄。
6.查詢(Query)
一條SQL(結構化查詢語言)命令,用來從一個或多個表中獲取一組指定的記錄,或者對某個表執行指定的操作。當從資料庫中讀取數據時,往往希望讀出的數據符合某些條件,並且能按某個欄位排序。使用SQL,可以使這一操作容易實現而且更加有效。SQL是非過程化語言(有人稱為第四代語言),在用它查找指定的記錄時,只需指出做什麼,不必說明如何做。每個語句可以看作是一個查詢(query),根據這個查詢,可以得到需要的查詢結果。
7.過濾器(Filter)
過濾器是資料庫的一個組成部分,它把索引和排序結合起來,用來設置條件,然後根據給定的條件輸出所需要的數據。
8.視圖(view)
數據的視圖指的是查找到(或者處理)的記錄數和顯示(或者進行處理)這些記錄的順序。在一般情況下,視圖由過濾器和索引控制
6. 數據架構是什麼
從整公司的角度來看,企業架構包含業務架構、技術架構和數據架構。數據架構應該是面向業務數據定義、數據生產、數據分析、數據使用的整體架構,與業務架構、技術架構相輔相成,密不可分,故大數據架構和資料庫架構都只是數據架構的個子集。
7. 「數據結構"中的數據是什麼
數據結構,這個詞語不是「數據和結構」,是「用來存放數據的常用結構」,數據是程序員寫的程序自己定義的數據
8. 數據結構: 是什麼
數據結構是什麼?數據和結構有什麼關系?數據結構首先要定義兩個東西,一個是數據,一個是結構.數據是一組有意義的信息.把數據作為信息單元.結構,就是信息單元和信息單元之間的構成關系.構成關系以最抽象的形式表達:對應關系: 一對一,一對多,多對多.順序關系: A –> B, B->A數據結構就是把信息單元組成結構的一種方法論.常見的數據結構有:一對一,(隊列): 1,2,3,4,5...按照內容有序性,可分為有序隊列還是無序隊列.按照順序可以分為單向和雙向.按照不同的映射方法,可以分為位置映射,指針映射,函數映射. 一對多(樹型結構): 1->(2,3)->((4,5),(6,7))...多對多(圖形結構): (1,2)->(3,4)…. 數據結構的功能:1. 以一種有益方式組織信息.2. 所謂有益, 就是有助 演算法效率(開發效率和執行效率)3. 結構, 可能也是信息本身 一種結構轉換為另一種結構的原因:1.信息可能需要變化2.結構轉變的目的總是為了常用演算法效率的提高