数据结构!!!

数据结构

57620314

插入数据9

576290314

数据结构是一种用来组织和存储数据的方式,它定义了数据之间的关系和操作。数据结构可以有不同的形式和实现方式,如数组、链表、栈、队列、树和图等。数据结构的选择和设计对于实现特定的算法和解决问题非常重要,它可以影响到程序的效率和性能。数据结构也是计算机科学的基础知识之一,是理解和应用计算机科学的重要内容之一。

算法

算法就是解决问题的方法

累加法      例1+2+3+4+5+......+100

利用等差公式

算法是解决问题的一系列步骤或规则,它描述了如何对输入数据进行处理,以获取所需的输出结果。算法可以通过使用合适的数据结构来实现,以提高执行效率和优化空间利用。算法的好坏可以通过时间复杂度和空间复杂度来评估。

如何判断算法的优劣?

通过时间复杂度来进行判别的

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

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

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

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

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

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

列题:

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

解析:

第一轮:i = 1

第二轮:i = 2

第三轮:i = 4

第四轮:i = 8

第五轮:i = 16

...............

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

2^(y-1) = n ---------------> y = log2n

void fun (int n){
    int i = 0;
    while(i*i*i<n){
    i ++;
    }
    }

解析

第一轮:i = 0

第二轮:i = 1

第三轮:i = 2

第四轮:i = 3

.......

第y轮:i = (y-1)

(y-1)*(y-1) *(y-1) = n

y^3 = n

y = n^1/3

    x = 2
while(x<n/2){
    x = x * 2;
        }

解析

第一轮:x = 2

第二轮:x = 4

第三轮:x = 8

第四轮:x = 16

.......                                                                                                                                                                                                                          

第y轮:x = 2^y

2^y = n ------>y = log2n


        x= 0 
while (n>(x+1)*(x+1)){
        x = x + 1;
            }

解析

第一轮: x = 0

第二轮:x = 1

第三轮:x = 2

第四轮:x = 3

........

第y轮:x = y - 1

y^y = n

y = 根号n

 i = 1;k = 0;
while(i<n-1){
k = k + 10*i;
    i++;
    }

解析

第一轮:i = 1

第二轮:i = 2

第三轮:i = 3

第四轮:i = 4

......

第y轮:i = y

y = n-1

y = On

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值