大话数据结构--第2章 算法

2.1算法的特性

算法具有五个基本特性:输入、输出、有穷性、确定性、可行性。

2.2算法设计的要求

正确性、可读性、健壮性、时间效率高和存储量低

2.3算法时间复杂度

2.2算法空间复杂度

结束语

算法的优劣直接决定了程序运行的效率

时间: 2024-09-30 19:55:10

大话数据结构--第2章 算法的相关文章

《大话数据结构》第一章读后感想

一.关于数据结构的定义:数据和结构 一类数据由多个数据对象组成,数据对象的最小单位是数据元素,但是对于数据结构这本书来说,数据对象是我们所关注的单位. 结构分为逻辑结构和物理结构.其中逻辑结构是面向问题的,包括集合结构.线性结构.树形结构.图形结构.而物理结构即存储结构,包括顺序存储结构和链接存储结构两种.链接存储结构通过指针表示数据对象之间的逻辑结构. 二.抽象数据类型 抽象数据类型(ADT)指一个数学模型及定义在该模型上的一组操作.程序员可以在写程序的过程中自己定义. 下课了!第二章----

《大话数据结构》---第一章 数据结构绪论

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以前他们之间的关系和操作等相关问题的学科. 程序设计 = 数据结构 + 算法 数据:描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合.数据元素:组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录.数据项:一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位.数据对象:是性质相同的数据元素的集合,是数据的子集.(性质相同即具有相同数量和类型的数据项)数据结构:是

KMP算法学习记录----《大话数据结构》部分匹配表学习部分

如需转载,请保留本文链接. 首先先将<大话数据结构>关于KMP算法的讲解部分贴上,本文不提供下载链接,也不会将电子书作为资料留百度云,需要电子书的各位,请自行寻找电子版. 关于上述的KMP算法种的next数组的推导部分,一直不是很明白,本贴是关于上述部分的学习推导记录. 以书中字符串为例: 1|2|3|4|5|6|7|8|9| a|b|a|b|a|a|a|b|a| 0|1|1|2|3|4|2|2|3| string T = "ababaaaba"; int i = 1;j

[数据结构 - 第3章补充] 线性表之双向链表(C语言实现)

一.什么是循环链表? 双向链表(double linked list)是在单链表的每个结点中,再设置一个指向其前驱结点的指针域.所以在双向链表中的结点都有两个指针域,一个指向直接后继,另一个指向直接前驱. 既然单链表也可以有循环链表,那么双向链表当然也可以是循环表. 线性表的双向链表存储结构如下: typedef int ElemType; typedef struct DulNode { ElemType data; //数据域 DulNode *prior; //指向前驱结点的指针 DulN

图的基础算法(大话数据结构笔记)

概述 线性表的每个元素有线性关系,每个数据元素只有一个直接前去和一个直接后继.树的数据元素之间有着明细那的层次关系,并且每层上的数据元素可能和下一层中多个元素相关,但只能和上一层中一个元素相关.这和一对父母可以有很多孩子,但每个孩子却只能有一对父母是一个道理.可现实中,人与人之间关系复杂,不是简单一对一,一对多的关系.这种复杂关系更适合用图来表示.在图结构中,节点之间的关系可以是任意的,图中任意两个数据元素之间都可能相关.如下图所示:无向边:Edge (vi,vj)有向边:也叫弧,Arc. <v

《大话数据结构》笔记(1)--数据结构绪论,算法

第一章 数据结构绪论 基本概念和术语 数据 数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合. 换言之,数据就是符号,而且具备两个前提: 1. 可以输入到计算机中 2. 能被计算机程序处理 数据元素 数据元素是组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录. 数据项 一个数据元素可以由若干个数据项组成. 数据项是数据不可分割的最小单位. 数据对象 数据对象是性质相同的数据元素的集合,是数据的子集. 数据结构 数据结构是

【学习总结】《大话数据结构》- 第3章-线性表

[学习总结]<大话数据结构>- 总 启示: 线性表:零个或多个数据元素的有限序列. 目录 3.1 开场白 3.2 线性表的定义 3.3 线性表的抽象数据类型 3.4 线性表的顺序存储结构 3.5 顺序存储结构的插入与删除 3.6 线性表的链式存储结构 3.7 单链表的读取 3.8 单链表的插入与删除 3.9 单链表的整表创建 3.10 单链表的整表删除 3.11 单链表结构与顺序存储结构优缺点 3.12 静态链表 3.13 循环链表 3.14 双向链表 3.15 总结回顾 3.16 结尾语 -

【学习总结】《大话数据结构》- 第9章-排序

[学习总结]<大话数据结构>- 总 启示: 树 目录 6.1 开场白 6.2 树的定义 6.3 树的抽象数据类型 6.4 树的存储结构 6.5 二叉树的定义 6.6 二叉树的性质 6.7 二叉树的存储结构 6.8 遍历二叉树 6.9 二叉树的建立 6.10 线索二叉树 6.11 树.森林与二叉树的转换 6.12 赫夫曼树及其应用 6.13 总结回顾 6.14 结尾语 ---------------------------------------------- 6.1 开场白 一些可以略过的场面

九章算法 基础算法 强化算法 系统设计 大数据 安卓 leetcode 高清视频

leetcode 直播视频讲座录像 九章算法视频录像,PPT 算法班,算法强化班,Java入门与基础算法班,big data项目实战班,Andriod项目实战班 九章算法下载 九章算法面试 九章算法leetcode 九章算法答案 九章算法mitbbs 九章算法班 九章算法ppt 九章算法录像 九章算法培训 九章算法微博 leetcode 视频 九章算法偷录 算法培训 算法班课程大纲: 1 从strStr谈面试技巧与Coding Style(免费试听) 2 二分搜索与旋转排序数组 Binary S