資料結構基本概念,演算法與演算法分析

2021-08-17 02:20:39 字數 1087 閱讀 5544

一.演算法

1.概念

演算法是對特定問題求解步驟的一種描述。是指令的有限序列,其中每條指令表示乙個或多個操作

2.性質

3.目標:正確性,可讀性,健壯性,高效率

4.演算法的描述:自然語言,程式語言,偽**

5.演算法分析

1)時間複雜度t(n)

執行演算法所需要的計算工作量,用演算法所執行的基本運算次數來度量。而演算法所執行的基本運算次數是問題規模的函式,即演算法的工作量=f(n)。

求時間複雜度:大o表示法,只需保留最高次冪的項,並去掉其係數即可

eg1:求兩個n階矩陣相乘的演算法,求其演算法的時間複雜度

public static void squaremult(int a,int b,intc,int n)

}

注:考慮最好,最壞,平均時間複雜度

演算法的空間複雜度是指:執行這個演算法所需要的記憶體空間。

演算法通常由兩種基本要素組成:

1.對資料物件的運算和操作(算術運算,邏輯運算,關係運算,資料傳輸等)。

2**演算法的控制結構(**一般都可以用順序,選擇,迴圈三種基本結構組成)

演算法設計基本設計方法主要有:列舉,歸納,遞迴,遞推和減半遞推技術

資料結構

資料的邏輯結構在計算機儲存空間中的存放形式稱為資料的儲存結構(物理結構)

資料的儲存結構在計算機中所佔的空間不一定是連續的

資料結構是指相互關聯的資料資料元素的集合

根節點,終結點,內部結點

.樹與二叉樹

二叉樹地遍歷:先左後右

前序遍歷:根節點——左子樹——右子樹 遞迴(dlr)

中序遍歷:左子樹——根節點——右子樹 遞迴(ldr)

後序遍歷:左子樹——右子樹——根節點 遞迴(lrd)

排序技術:

氣泡排序:n(n-1)/2

堆排序:0

快速排序:n(n-1) /2

簡單插入法排序:n(n-1)/2

資料結構與演算法基本概念

一 基本資料結構 基本資料結構的定義 特性 運算 演算法。基本資料結構的分類 邏輯結構 1 線性結構 線性表 棧 佇列 雙佇列 陣列 廣義表 串 2 非線性結構 樹 二叉樹 圖 網 儲存結構 1 順序儲存 向量 一維陣列 2 鏈式儲存 鍊錶 二 演算法 查詢 順序 折半 分塊 雜湊 二叉排序樹 排序...

資料結構與演算法 基本概念

課前導入 如何在書架上擺放圖書,擺放圖書有兩個相關操作。操作1 新書如何插入書架 操作2 如何找到需要的書 方法1 隨便放 一本本挨著放 操作1 直接放在最後面 操作2 一本本的找 方法2 按照書名的首字母排序 操作1 根據新書的首字母 二分查詢該插入的位置 移出空位 操作2 使用二分查詢 方法3 ...

資料結構 演算法基本概念

1 有窮性 2 確定性 3 可行性 4 輸入 5 輸出 1 時間複雜度 它定性描述演算法的執行時間。乙個演算法花費的時間與演算法中語句的執行次數成正比例,哪個演算法中語句執行次數多,它花費時間就多。乙個演算法中的語句執行次數稱為語句頻度或時間頻度,記為t n 時間複雜度又分為 最壞時間複雜度,平均時...