資料結構與時間複雜度

2021-07-27 10:30:27 字數 732 閱讀 2952

什麼是資料結構?

資料元素相互之間的關係稱為結構資料結構是相互之間存在一種或多種特定關係的資料元素的集合。資料結構包括三個方面的內容:邏輯結構儲存結構,和資料運算。資料的邏輯結構和儲存結構是密不可分的兩個方面。乙個演算法的設計取決於所選定的邏輯結構,而演算法的實現依賴於所採用的儲存結構。

資料的邏輯結構

資料的儲存結構

儲存結構又指資料結構在計算機中的表示,也成物理結構。主要有

定義乙個完整的資料結構可以用抽象資料型別(通常用資料物件,資料關係,基本操作集來表示)

思考題

對於兩種不同的資料結構,邏輯結構或物理結構一定不相同嗎?

答:有可能完全相同,二叉樹和二叉排序樹,二叉排序樹可以採用二叉樹的邏輯表示和儲存方式。前者用來表示層次關係,後者用來排序和查詢。前者的時間複雜度為o(n),二叉排序樹的時間複雜度為o(logn).

試舉一例,說明對於相同的邏輯結構,同一種運算在不同的儲存方式下實現,運算效率不同

答:線性表可以用順序儲存方式實現,可以用鏈式儲存方式實現,順序村粗方式下,查詢和刪除元素,時間複雜度為o(n),鏈式儲存方式下,時間複雜度為o(1).

資料結構 時間複雜度與空間複雜度

演算法效率分兩種,時間效率和空間效率,即時間複雜度和空間複雜度,前者衡量演算法執行速度,後者衡量演算法所需要的額外空間 2.1基本概念 演算法中的時間複雜度是乙個函式,定量描述了演算法執行時間 總結下來就是 演算法種基本操作的執行次數 關注點 操作的數量級 基本操作的執行次數 執行時間和硬體資源強相...

資料結構與時間複雜度

資料結構是相互之間存在一種或多種特定關係的資料元素的集合。邏輯結構就是資料之間的關係。而按資料之間的關係來說,大概可以分為兩種 線性結構和非線性結構。非線性結構 什麼是儲存結構?邏輯結構指的是資料間的關係,而儲存結構是邏輯結構的儲存映像。通俗的講,可以將儲存結構理解為邏輯結構用計算機語言的實現。常見...

資料結構 時間複雜度 空間複雜度

1.演算法效率 演算法效率可以用來衡量乙個演算法的好壞 演算法效率分析分為兩種 第一種是時間效率,第二種是空間效率.時間效率被稱為時間複雜度,空間效率被稱為空間複雜度.時間複雜度主要衡量的是乙個演算法的執行速度,而空間複雜度主要衡量乙個演算法所需要的額外空間,在計算機發展的早期,計算機的儲存容量很小...