数据结构与算法《褚论》

简介: 数据结构与算法《褚论》

程序=数据结构+算法

算法其实是用于解决某一类问题的公式与思想。(给出问题的数学模型)而数据结构就是

数据的组织、管理和存储格式,其使用目的是为了高效的访问和修改数据。至于程序就是计算机处理问题的一系列指令。

数据结构的研究内容

1.2数据、数据元素、数据项和数据对象

1.2.1数据是客观事物的符号表

数据元素是数据的基本单位

数据项是组成数据元素的、有独立含义的、不可分割的最小单位

数据对象是性质相同的数据元素的集合,是数据的一个子集

1.2.2数据结构

相互之间存在一种或多种特定关系的数据元素的集合,也是说数据结构是带“结构”的数据元素的集合

包含两种数据结构:逻辑结构和存储结构

数据结构与算法的研究内容

1.逻辑结构:研究对象的特性及其相互之间的关系

2.存储结构:有效地组织计算机存储

3.算法:有效地实现对象之间的”运算“关系

算法时间复杂度定义

1.算法中基本语句重复执行的次数是问题规模的某个函数f(n),算法的时间量度记作:T(n)=O(f(n))

n越大算法的执行时间越长

排序:n为记录数

矩阵:n为矩阵的阶数

多项式:n为多项式的项数

集合:n为元素个数

树:n为树的结点个数

图:n为图的顶点数或边数

将一堆数组a中的n个数逆序放到原数组中

for(i=o;i<n;i++)

b[i]=a[n-i-1];

for(i=0;i<n;i++)

a[i]=b[i];

设计数据类型=数据的逻辑结构+抽象运算(运算的功能描述)


相关文章
|
9天前
|
存储 算法
数据结构与算法
数据结构与算法
16 2
|
3月前
|
算法
数据结构与算法之链式栈
链式栈的使用 本篇博客遇上篇博客不同,不需要加条件判断栈是否为满,为了提高效率我们可以使用链表的前插法来表示栈,整体使用方法和单链表类似
13 0
|
6月前
|
存储 算法 编译器
数据结构与算法之一
数据结构与算法之一
26 0
|
8月前
|
存储 算法 Java
数据结构与算法:8种算法经典问题
前言 本文主要讲解8种算法经典问题。
123 0
|
9月前
|
存储 算法 网络协议
|
算法 Python
数据结构与算法练习(1)
13195的所有质因数为5、7、13和29。 600851475143最大的质因数是多少?
|
算法
数据结构与算法(一)
近日受北京疫情影响居家办公,给自己充充电,刷一遍 邓俊辉老先生的算法与数据结构教程,纯属学习笔记,有总结不当的地方欢迎指正~
136 0
数据结构与算法(一)
|
存储 算法
数据结构与算法总纲
数据结构与算法总纲
173 0
数据结构与算法总纲
|
算法 JavaScript 前端开发
数据结构与算法(一):准备篇
数据结构与算法(一):准备篇
128 0
数据结构与算法(一):准备篇
|
算法
数据结构与算法——线性排序
前面已经说完了几种非线性排序,它们分别是时间复杂度为 O(n2) 、适合小规模数据的冒泡排序、选择排序、插入排序,和应用较广泛的时间复杂度为 O(nlogn) 的希尔排序、归并排序、快速排序。其实这几种排序都有一个特性,那就是它们都是基于数据的比较和移动,而今天介绍的这几种线性排序,他们的时间复杂度都是 O(n) ,因为不涉及到数据的比较和移动。
113 0
数据结构与算法——线性排序