算法与数据结构学习笔记第1到10讲

/*心血来潮打算学一下这个提高自己的综合编程能力,希望能坚持学一下。

出自:【【C语言描述】《数据结构和算法》】 https://www.bilibili.com/video/BV1jW411K7yg/?share_source=copy_web&vd_source=bab35cd72a6b7a3ffd3c77e664d802f1*/

第一讲 数据结构与算法导论

程序设计=数据结构+算法

数据结构是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。数据结构通常分为逻辑结构存储结构(或物理结构)。

  1. 逻辑结构:是从具体问题抽象出来的数学模型,是描述数据元素及其关系的数学特性的。有时把逻辑结构简称为数据结构。逻辑结构在计算机存储中的映像称为存储结构。
  • 集合结构:该结构的数据元素间的关系是“属于同一个集合”。
  • 线性结构:该结构的数据元素之间存在着一对一的关系。常见的有链表、队列、栈等。
  • 树形结构:该结构的数据元素之间存在着一对多的关系。常见的有二叉树、二叉查找树、平衡二叉查找树等。
  • 图形结构:该结构的数据元素之间存在着多对多的关系,也称网状结构。
  1. 存储结构:数据的存储结构是数据的逻辑结构在计算机存储器中的实现,包括数据元素的存储表示和关系的存储表示。数据的存储结构分为顺序存储结构和链式存储结构。
  • 顺序存储结构:表示数据元素在存储器中是连续存储的,可以用相对位置来表示数据元素之间的逻辑结构,如顺序表、队列、栈等。
  • 链式存储结构:每个数据元素里设置了一个指针用来指向另一个元素的存储地址,以此来表示数据元素之间的逻辑结构。   

第二讲 谈谈算法

算法是对解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。

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

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据结构与算法是计算机科学的基础和核心领域之一,第ba章介绍了数据结构的相关内容。 本章主要包括以下几个方面的内容: 1. 线性结构:线性结构是指数据元素之间存在一对一的关系,包括线性表、栈和队列。线性表是最基本的数据结构之一,它分为顺序表和链表两种形式。顺序表使用数组实现,插入和删除操作相对低效。链表使用指针实现,插入和删除操作较为灵活。 2. 树结构:树结构是一种层次结构,由节点和边组成。常见的树结构有二叉树、二叉搜索树和平衡二叉树等。二叉树中每个节点最多有两个子节点,二叉搜索树中左子节点的值小于根节点,右子节点的值大于根节点,查找效率较高。平衡二叉树是一种保持左右子树高度差不大于1的二叉搜索树。 3. 图结构:图结构是由节点和边组成的非线性结构。图分为有向图和无向图。图的表示方法有邻接矩阵和邻接表两种。深度优先搜索和广度优先搜索是图的常用遍历方法,可用于寻找路径、连通分量等问题。 4. 排序算法:排序算法是对一组无序数据进行按照某个规则进行有序排列的算法。第ba章介绍了常见的排序算法,包括冒泡排序、插入排序、选择排序、归并排序、快速排序等。每种排序算法的时间复杂度和空间复杂度不同,选择合适的排序算法可以提高性能。 5. 查找算法:查找算法是在一组数据中搜索某个特定元素的算法。第ba章介绍了顺序查找、二分查找和哈希查找等常见的查找算法。二分查找是在有序数组中应用最广泛的查找算法,通过不断缩小查找范围来快速定位目标值。 通过学习这些内容,我们可以了解不同数据结构的特点和应用场景,以及常见的排序和查找算法。掌握好这些知识,对于解决实际问题和提高程序效率都有很大帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值