算法和数据结构简介

目录

一、算法

二、时间复杂度

三、空间复杂度

四、数据结构


一、算法

1、定义:在计算机领域里,算法是一系列程序指令,用于处理特定的运算和逻辑问题。

2、应用领域

(1)运算

(2)查找

(3)排序

(4)最优决策

3、衡量算法好坏的重要标准有两个:时间复杂度和空间复杂度

二、时间复杂度

1、时间复杂度是对一个算法运行时间长短的度量,用大O表示。

2、一些常见的大O运行时间:

O(1)

O(log n):对数时间,-->二分算法;

O(n):线性时间 ——>简单查找

O(n*log n) ---->快速排序;

O(n^2)---->选择排序;

O(n!):阶乘时间----->旅行商问题的解决方法

从上往下时间复杂度从低到高排序。

三、空间复杂度

空间复杂度是对一个算法在运行过程中临时占用存储空间大小的度量,它同样使用了大O表示法。

1、常量空间:O(1)

2、线性空间:O(n)

3、二维空间:O(n^2)

4、递归空间:O(n)(递归算法的空间复杂度和递归深度成正比)

递归代码在计算机执行程序时,会专门分配一块内存,用来存储“函数调用栈”。函数调用栈包括进栈出栈两个行为。

四、数据结构

1、定义:数据的组织、管理和存储格式,其使用的是高效的访问和修改数据

2、组成方式:

(1)线性结构:数组、链表、栈、队列、哈希表

(2)树

(3)图

(4)其他数据结构

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值