数据结构之算法

算法的基本概念

计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法

算法的基本要素

一个算法是由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构

算法中对数据的运算和操作

在一般计算机系统中,基本运算和操作有以下4类:算术运算,逻辑运算,关系运算和数据传输

算法的控制结构

算法中各操作之间的执行顺序称为算法的控制结构

描述算法的工具通常有:N-S结构化流程图,算法描述语言等。一个算法一般都可以用顺序,选择,循环3种基本结构组合而成。

算法复杂度

算法的时间复杂度

算法的时间复杂度是指执行算法所需要的计算工作量。

同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均

不同。这表明使用绝对的时间单位衡量算法的效率是不合适的。撇开这些与计算机硬件、软件有关的因素, 可以认为一个特定算法"运行工作量"的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函 数。即

算法的工作量= f ( n ) f(n) f(n)

算法的空间复杂度

一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过

程中所需要的额外空间。其中额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加 存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为 了减少算法所占的存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。

疑难解答:算法的工作量用什么来计算?

算法的工作量用算法所执行的基本运算次数来计算,而算法所执行的基本运算次数是问题规模的函数,即算法的工作量=f (n),其中n是问题的规模。

相关推荐
yugi987838几秒前
基于Matlab的晴空指数计算实现
开发语言·算法·matlab
ADI_OP17 分钟前
ADAU1452的开发教程3:常规音频算法的开发(2)
算法·dsp开发·adi dsp中文资料·adi dsp·adi音频dsp·adi dsp开发教程
666HZ66619 分钟前
数据结构1.0 数据结构在学什么
数据结构·算法
余瑜鱼鱼鱼24 分钟前
Java数据结构:从入门到精通(五)
数据结构
君义_noip29 分钟前
信息学奥赛一本通 1951:【10NOIP普及组】导弹拦截 | 洛谷 P1158 [NOIP 2010 普及组] 导弹拦截
c++·算法·csp-j·信息学奥赛
环黄金线HHJX.29 分钟前
《QuantumTuan ⇆ QT:Qt》
人工智能·qt·算法·编辑器·量子计算
jz_ddk30 分钟前
[实战] 射频相位噪声单位转换:从dBc/Hz到rad
算法·rf·射频·相位噪声·相噪
zl_vslam31 分钟前
SLAM中的非线性优-3D图优化之地平面约束(十五)
人工智能·算法·计算机视觉·3d
空空潍34 分钟前
hot100-滑动窗口最大值(day11)
数据结构·c++·算法·leetcode
朔北之忘 Clancy37 分钟前
2025 年 6 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解