大数据存储技术-----数据结构

2.什么是算法?      ---------------------->    解决问题的方法

1+2+3+4+5+6+.......+1000

(1)累加法:一个个的加

(2)利用等差数列求和公式直接算出答案

如何评判算法的优劣 --------------------------->  通过时间复杂度来进行判别

算法的时间复杂度是如何计算出来的?

时间复杂度是研究数据总量n和算法执行次数y之间的关系

y= an + b (a是系数,b是常数),如果n非常大-->y=n(算法执行次数和数据总量直接相关)--->O(n)

y= an^2+bn+c(ab是系数,c是常数),如果n非常大-->y=n^2(算法执行次数和数据总量的平法直接相关)--->O(n^2)

y= a (a是常数),-------->算法的执行次数和数据总量没有任何关系)--->O(1)

y= logn---------->算法的执行次数和数据总量存在log别的关系--->O(long)

例题:(时间复杂度)

void fun(int n){
 int i = 1;
while(i<n){
 i = i *2;
   }
   }

viod fun(int n ){

   int i = 1;

while(i<n){

    i = i*2

      } 

      }  

时间复杂度是研究:数据总量n和执行次数y之间的关系

第一轮:i = 1

第二轮:i = 2

第三轮:i  = 4

第四轮:i = 8

第五轮:i = 16

           .......

第y轮:i =  2^(y-1) = n

   O(logn) 2^y = n ---------------y = log2n   

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值