(一)數據結構基本概念、存儲結構、復雜度


1.1 數據結構基本概念

  數據結構(data structure)是相互之間存在一種或多種特定關系的數據元素的集合

1.2 基本結構

  數據元素相互之間的關系稱為結構,數據元素之間關系的不同特性,4類基本結構:1. 集合 2. 線性結構 3. 樹形結構 4. 圖狀結構或網狀結構

1.3 基本原理

1.4 基本方法

1.5 存儲結構

  順序存儲結構、鏈式存儲結構

1.6 基本操作

1.7 時間復雜度

T(n) = O(f(n))
基本操作執行次數是問題規模n的謳歌函數f(n)
問題規模n增大,算法執行時間的增長率和f(n)的增長率相同
頻度(frequency count) 指該語句重復執行的次數

a {++x; s = 0;}
b for (i=1; i<=n; ++i) {++x; s += x;}
c for (j=1; j<=n; ++j)
    for (k=1;k<=n;++k) {+=x; s += x;}
d for(i=1; i<=n; ++i)
    for (j=1; j<=n; ++j) {
        c[i][j] = 0;
        for (k=1; k<=n; ++k)
             c[i][j] += a[i][k] * b[k][j];
    }

其中abcd分別對應時間復雜度為 O(1) O(n) O(n^2) O(n^3)
d是求n x n 矩陣相乘
我們應該金肯呢個選用多項式階O(n^k)的算法,而不希望用指數階的算法。除特別指明外,均指最壞情況下的時間復雜度。

1.8 空間復雜度(space complexity)

S(n) = O(f(n))
其中n為問題的規模(或大小),S(n)算法所需存儲空間的量度

 

目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM