《数据结构教程》(第5版)上机实验题1--实验题2:
目的:
理解常见算法时间函数的增长趋势
对以下函数用c++程序运行观察其变化:
<< "log2(n): << " √n: << " n: << " n*log2(n): << " n*n: << " n^3: << " 2^n: << " n!:
s-code:
#include<iostream> #include<cmath> using namespace std; double factorial(double n) { double result = 1; while(n) { result *= n--; } return result; } int main() { int n = 1, i; cin >> i; while(i >= n) { cout << "log2(n):" << log2(n) << " √n:" << sqrt(n) << " n:" << n << " n*log2(n):" << n*log2(n) << " n*n:" << n*n << " n^3:" << n*n*n << " 2^n:" << exp2(n) << " n!:" << factorial(n) << endl; n++; } return 0; }
result of test: