菜鳥一枚,
剛剛學習資料結構與演算法,
為了加深理解,
所以與同學們分享學習過程。
今天學習的是,
歸併排序!!!
上**:
#include
void
merge
(int arr,
int l,
int m,
int r)
//合併兩個陣列
for(i = m;i <= r;i++
)//右邊已排序好的
i =0;
int j =
0,k = l;
while
(i < left_size&&j < right_size)
//進行判斷合併
else
}while
(i < left_size)
//左邊或右邊都以放入數值的,另一邊剩下的直接填入陣列
while
(j < right_size)
}void
mergesort
(int arr,
int l,
int r)
else
}int
main()
;int l =0;
//int m = 4;
int r =7;
int i ;
mergesort
(arr,l,r)
;for
(i =
0;i <= r;i++
)return0;
}
謝謝同學們的閱讀!!! 資料結構與演算法學習筆記
演算法基礎篇 第一章 演算法概述 首先了解一下基本的概念 1.1 什麼是演算法呢?從字面意義上理解,演算法就是用於計算的方法,用這種方法達到預期的結果。通俗的講,演算法可以理解為乙個完整的解題步驟,由一些基本的運算和規定的運算順序組成。通過這樣的解題步驟可以解決特定的問題。演算法可以抽象出5個特徵 ...
資料結構與演算法學習筆記(一)
資料 計算機操作的物件 資料元素 組成資料的基本基本單位 資料項 乙個資料元素可以由若干個資料項組成 資料物件 性質相同的資料元素的集合 資料結構 是相互之間存在一種或多種特定關係的資料元素的集合 資料型別 1.原子型別 不可以在分解的基本型別,包括整型,字元型 2.結構型別 由若干個型別組合而成 ...
資料結構與演算法學習筆記3
最好情況時間複雜度 最壞情況時間複雜度 平均情況時間複雜度 均攤時間複雜度 例 在乙個無序的陣列 array 中,查詢變數 x 出現的位置。如果沒有找到,就返回 1 n表示陣列array的長度 intfind int array,int n,int x return pos 時間複雜度 o n nn...