网站大量收购闲置独家精品文档,联系QQ:2885784924

数据结构概述课件.pptVIP

数据结构概述课件.ppt

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

1.2.2數據結構定義數據結構(DataStructure)是指互相之間存在著一種或多種關係的數據元素的集合。數據元素之間的關係稱為結構。數據的結構包括邏輯結構和物理結構。(1)邏輯結構:是數據元素之間的相互邏輯關係,它與數據的存儲無關,是獨立於電腦而存在。數據結構是由兩個集合構成的一個二元組:Data_Structure(D,R))Data_Structure是一種數據結構,它由同屬一個數據對象的數據元素的有限集合D和D上二元關係的有限集合R組成。其中:D={di|1≦i≦n,n≧1}R={rj|1≦j≦m,m≧1}*di表示第i個數據元素,rj表示第j個關係。D上二元關係R是序偶的集合。對於R中的任一序偶x,y(x,y∈D),x稱為序偶的第一元素,y稱為序偶的第二元素,又稱序偶的第一元素是第二元素的直接前驅;第二元素為第一個元素的直接後繼。【例1-5】樹型結構中的圓圈代表數據元素,帶箭頭的連線表示元素之間的關係,試用二元組表示法表示其邏輯結構。解:二元組為(D,R)其中,D={A,B,C,E,F,G,H,I,J};R={A,B,A,C,A,E,B,F,B,G,E,H,E,I,E,J}ABCEFGHIJ*通常有下列四種基本的結構:a.集合結構。集合是元素關係極為鬆散的一種結構。b.線性結構。線性結構的邏輯特徵是:若結構是非空集,則有且僅有一個開始結點和一個終端結點,並且所有結點都最多只有一個直接前驅和一個直接後繼。c.樹型結構。該結構的數據元素之間存在著一對多的關係。d.圖型結構。該結構的數據元素之間存在著多對多的關係,圖型結構也稱作網狀結構。(2)物理結構(或存儲結構)是數據結構在電腦中的表示(又稱映像),它包括數據元素的機內表示和關係的機內表示。具體實現的方法有順序、鏈接、索引、散列等多種,數據的具體操作與存儲結構有很密切的聯繫。數據結構作為一門學科主要研究數據的各種邏輯結構和存儲結構,以及對數據的各種操作。同時還要考慮執行演算法時的時間和空間效率。*1.3演算法和演算法描述⑴有窮性。一個演算法必須在有窮步之後結束,即必須在有限時間內完成。⑵確定性。演算法的每一步必須有確切的定義,無二義性。⑶可行性。演算法中的每一步都可以通過已經實現的基本運算的有限次執行得以實現。⑷輸入。一個演算法具有零個或多個輸入,這些輸入取自特定的數據對象集合。⑸輸出。一個演算法具有一個或多個輸出,這些輸出同輸入之間存在某種特定的關係。1.3.1演算法與演算法特性演算法(Algorithm)是對特定問題求解步驟的一種描述,是指令的有限序列。一個演算法應該具有下列特性:*一個好的演算法通常要達到以下的要求:正確。執行結果應當滿足預先規定的功能和性能要求。可讀。應當思路清晰、層次分明、簡單明瞭、易讀易懂。健壯。當輸入不合法數據時,應能作適當處理,不至引起嚴重後果。高效。有效使用存儲空間和有較高的時間效率。1.3.2演算法描述最簡單的方法是使用自然語言,其優點是簡單且便於人們對演算法的閱讀;缺點是轉換成高級語言困難。類C語言忽略高級程式設計語言中一些嚴格的語法規則與描述細節,因此它比程式設計語言更容易描述和被人理解,比自然語言更接近程式設計語言,很容易被轉換成高級語言。*本書對所用類C語言作如下約定:1.問題的規模用MAXSIZE#defineMAXSIZE602.預定義常量和類型:#defineTRUE1#defineFALSE0#defineOK1#defineERROR0#defineOVERFLOW-1typedefintStatus;3.數據結構(存儲結構)的表示用類型定義(typedef)描述。數據元素類型約定為ElemType,由用戶在使用該數據類型時自行定義。例1.學生資訊檢索系統中,用一維數組作存儲n個學生的資訊,數組中的數據元素有4個域:學號、姓名、性別和成績:typedefstructstd_info{longintNum;/*學號域*/charName[8];/*姓名域*/charSex;/*性別域*/floatScore;/*成績域*/}ElemType;*4.基本操作的演算法都用以下形式的函數描述函數類型函數名(函數參數表){/*演算法說明*/語句序列;}/*函數名*/5.C語

文档评论(0)

子不语 + 关注
官方认证
服务提供商

平安喜乐网络服务,专业制作各类课件,总结,范文等文档,在能力范围内尽量做到有求必应,感谢

认证主体菏泽喜乐网络科技有限公司
IP属地未知
统一社会信用代码/组织机构代码
91371726MA7HJ4DL48

1亿VIP精品文档

相关文档