本篇複習筆記主要介紹C++中常用函式的使用方式。
以下函式皆在 c語言<math.h> c++<cmath> 標頭檔中定義
pow(x,y) 計算之值。
sqrt(x) 計算x平方根之值。
abs(x) 計算x之絕對值。
gcd(a,b) 計算a,b之最大公因數。
以下函式皆在 <algorithm> 標頭檔中定義
sort( begin,end,cmp) 從陣列的begin位置到end-1位置進行排列,排列方式為有小到大,可自行定義排列方式,時間複雜度為O(nlogn)。
max(a,b) 會比較其參數中傳遞的兩個數字,並返回兩個中較大的一個,如果兩個相等,則返回第一個。
min(a,b) 會比較其參數中傳遞的兩個數字,並返回兩個中較小的一個,如果兩個相等,則返回第一個。
lower_bound( begin,end,num,greater() ) 從陣列的begin位置到end-1位置二分查詢第一個大於或等於num的數字,找到返回該數字的地址,不存在則返回end,此陣列需經過排序使其具有單調性,時間複雜度為O(logn)。
upper_bound( begin,end,num,greater() ) 從陣列的begin位置到end-1位置二分查詢第一個大於num的數字,找到返回該數字的地址,不存在則返回end,此陣列需經過排序使其具有單調性,時間複雜度為O(logn)。
binary_search( begin,end,num,greater() ):從陣列的begin位置到end-1位置二分查詢num是否存在陣列中,找到返回True,不存在則返回False,此陣列需經過排序使其具有單調性,時間複雜度為O(logn)。