数据结构——概论

基本概念和术语

数据是信息的载体

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

数据结构指的是数据之间的相互关系,即数据的组织形式

逻辑结构
  • 数据元素之间的逻辑关系
    • 集合
    • 线性结构
    • 树结构
    • 图结构
物理结构
  • 数据结构在计算机中的表示及存储方式
    • 顺序存储方式
      • 物理位置相邻
    • 链式存储方式
      • 指针指示逻辑关系
    • 索引存储方式
      • 除保存数据元素外,还要建立索引表
    • 散列存储方式
      • 根据关键字计算物理存储位置

算法和算法分析

算法的基本概念

算法必须满足如下5个重要特征
  • 输入:有0或多个输入值
  • 输出:有1或多个输出值
  • 有穷性:一个算法必须在执行又穷步骤之后结束
  • 确定性:算法的每一个步骤必须是有确切含义的
  • 可行性:算法中要做的运算都是相当基本的、能够精确进行的
  • 算法可以没有输入,单必须要有输出,通常输出的是算法的执行结果。实现算法的程序的运行时间是有限的,算法的每个执行步骤不能有歧义,且必须是能够执行的。

算法的评估和复杂性度量

正确性是评判算法的首要指标
  • 时间复杂度
  • 空间复杂度
  • 只有当一个算法需要的额外空间数量依赖于问题规模时,才考虑他的空间复杂度
相关推荐
wuqingshun3141594 小时前
蓝桥杯 11. 打印大X
数据结构·算法·职场和发展·蓝桥杯·深度优先
wuqingshun3141596 小时前
蓝桥杯 2. 确定字符串是否是另一个的排列
数据结构·c++·算法·职场和发展·蓝桥杯
长沙火山7 小时前
9.ArkUI List的介绍和使用
数据结构·windows·list
AAAA劝导tx8 小时前
List--链表
数据结构·c++·笔记·链表·list
格格Code8 小时前
八大排序——冒泡排序/归并排序
数据结构·算法·排序算法
fantasy_48 小时前
LeetCode238☞除自身以外数组的乘积
java·数据结构·python·算法·leetcode
Phoebe鑫9 小时前
数据结构每日一题day12(链表)★★★★★
数据结构·算法·链表
八股文领域大手子10 小时前
深入浅出限流算法(三):追求极致精确的滑动日志
开发语言·数据结构·算法·leetcode·mybatis·哈希算法
新时代苦力工10 小时前
处理对象集合,输出Map<String, Map<String, List<MyObject>>>格式数据,无序组合键处理方法
java·数据结构·list
一捌年11 小时前
java排序算法-计数排序
数据结构·算法·排序算法