1.数据:是描述客观事物的符号,是计算机可以操作的对象,是能被计算机识别,并输入给计算机处理符号的集合。

2.数据元素:是组成数据的,具有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录(理解:人类的基本单位:人,畜禽类的基本单位:鸡,鸟,鱼,鸭)。

3.数据项:一个数据元素可以由若干个数据项组成(理解:人是由胳膊,腿,头...组成的)。

4.数据对象:是性质相同的数据元素的集合,是数据的子集。

数据项是数据元素的子集,数据元素是数据对象的子集

逻辑结构

1.集合结构:集合结构中数据元素除了同属于一个集合外,它们之间没有其他关系。

2.线性结构:线性结构中的数据元素是一对一的关系。

3.树状结构:树状结构的数据元素之间存在一种一对多的层次关系。

4.图形结构:图形结构是多对多的关系。

物理结构:数据的逻辑结构在计算机中的存储形式(顺序存储结构和链式存储结构)

1.顺序存储结构:把数据元素存放在地址连续的存储单元里面,数据间的逻辑关系和物理关系是一致的。

2.链式存储结构:是把数据元素存放在任意的存储单元里面,这种存储单元可以连续,也可以不连续。

算法的特性:1.输入和输出----算法具有零个或多个输入,算法至少有一个或多个输出。2.有穷性---执行有限的步骤,并且每一个步骤都在一个可接受的时间内完成。3.确定性---算法的每一步都具有确定的定义,不会出现二义性。4.可行性---算法的每一步骤都是可行的,也就是说,每一步都可以在有限次内完成。

计算时间复杂度

推导大O阶的方法:1.没有加法常数不予考虑,2.只保留最高阶数项,3.去除这个项(最高阶数项)相乘的常数

for(int i = 0;i<n;i++)
{printf("hello World!");    /*执行n次*/
}
//复杂度为O(n)
for(int i = 0;i<n;i++)
{for(int j = i;j<n;j++)      {printf("hello World!");   //执行n+n-1+n-2+n-3...... = n*(n-1)/2 }
}
//复杂度为O(n^2)n++;                    //执行1次
int i,j;
for(i = 0;i<n;i++)      //执行n*n
{for(j = 0;j<n;j++){printf("hello world");}
}
for(i = 0;i<n;i++)   //执行(n*(n+1)/2)
{for(j = i;j<n;j++){printf("hello world");}
}
//执行次数f(n) = 1+n*n+n*(n+1)/2 = 3/2*n^2+1/2*n+1,所以时间复杂度为O(n^2)递归调用:递归次数*每次递归调用的次数
long long Fib(Size_t N)
{if(N < 3)return 1;                    //2^0+2^1+2^2+...+2^(n-1) - X= 2^N-1 /*等比数列*/return Fib(n-1) + Fib(n-2);    //O(2^N)
}

时间复杂度耗费时间从小到大:O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)

数据结构学习笔记(基本概念)相关推荐

  1. 数据结构学习笔记(六):二叉树(Binary Tree)

    目录 1 背景知识:树(Tree) 2 何为二叉树(Binray Tree) 2.1 二叉树的概念与结构 2.2 满二叉树与完全二叉树 2.3 二叉树的三种遍历方式 3 二叉树及其遍历的简单实现(Ja ...

  2. 数据结构学习笔记(四):重识数组(Array)

    目录 1 数组通过索引访问元素的原理 1.1 内存空间的连续性 1.2 数据类型的同一性 2 数组与链表增删查操作特性的对比 2.1 数组与链表的共性与差异 2.2 数组与链表增删查特性差异的原理 3 ...

  3. 《数据结构学习笔记》-持续记录

    数据结构学习笔记 1.基本概念 1.1 数据 2.数据结构 2.1逻辑结构 2.1.1 集合结构 2.1.2 线性结构 2.1.3 树形结构 2.1.4 图形结构 2.2物理结构(存储结构) 2.2. ...

  4. 考研数据结构学习笔记1

    考研数据结构学习笔记1 一.绪论 1.基本概念和术语 2.数据结构三要素 2.1逻辑结构 2.1.1 集合结构 2.1.2 线性结构:一对一 2.1.3 树形结构:一对多 2.1.4 图状结构:多对多 ...

  5. 数据结构 - 学习笔记 - 红黑树

    数据结构 - 学习笔记 - 红黑树 定义 简介 知识点 1. 结点属性 2. 前驱.后继 3. 旋转 查找 插入 父结点为黑色 父结点为红色 1. 有4种情形只需要变色(对应234树4结点) 1.1. ...

  6. 谷粒商城商品规格数据结构学习笔记(SPUSKU)

    谷粒商城商品规格数据结构学习笔记(SPU&SKU) SPU Standard Product Unit (标准产品单位) ,一组具有共同属性的商品集 SKU Stock Keeping Uni ...

  7. 数据结构学习笔记(王道)

    数据结构学习笔记(王道) PS:本文章部分内容参考自王道考研数据结构笔记 文章目录 数据结构学习笔记(王道) 一.绪论 1.1. 数据结构 1.2. 算法 1.2.1. 算法的基本概念 1.2.2. ...

  8. 数据结构学习笔记(3-5):树

    附录:所有blog的链接 数据结构学习笔记(1):基本概念 数据结构学习笔记(2):线性结构 数据结构学习笔记(3-5):树 数据结构学习笔记(6-8):图 数据结构学习笔记(9-10):排序 数据结 ...

  9. Perl 数据结构学习笔记

    Perl 数据结构学习笔记 Perl 脚本常用数据结构的学习总结用于以后自己参考,包括数组.散列.散列的数组.数组的散列.混合结构的使用,参考资料:Perl数据结构,Perl 教程 数组,二维数组(数 ...

  10. 软考高项之学习笔记——质量成本概念

    软考高项之学习笔记--质量成本概念 一.常见混淆概念 二.质量成本相关概念解释 1.质量成本概念 2.一致性成本 3.非一致性成本 三.历年真题 一.常见混淆概念 质量成本.一致性成本.非一致性成本. ...

最新文章

  1. 反向代理post参数怎么传输_都9102年了,GET和POST的区别掌握了没有?
  2. 国外10大IT网站和博客网站
  3. 微信小程序(11)--购物车
  4. iOS经典面试题总结--内存管理
  5. PHp批量推送数据太慢,PHP非阻塞批量推送数据-php教程
  6. 【CV秋季划】人脸编辑之统一属性编辑方法视频更新
  7. C#中怎样获取System.Drawing.Color的所有颜色对象并存到数组中
  8. Transformer再下一城!low-level多个任务榜首被占领,北大华为等联合提出预训练模型IPT
  9. 力扣算法001_两数之和
  10. 使用OpenCV python模块读取图像并将其另存为灰度系统
  11. jenkins--Jenkins+Git+coding+maven 实现自动化测试持续集成
  12. 推荐几个代码自动生成器,神器!!!
  13. 【转】GB2312 编码
  14. 制作游戏辅助/外挂违法吗?
  15. 计算机专业女生节祝福语,大学女生节简短祝福语
  16. R语言基础学习记录4:重要函数
  17. excel表格横向纵向变换_什么是报表工具?和 EXCEL 有什么区别?
  18. python几行代码实现邮件解析
  19. c#file过滤多种格式_用C#做软件:[1]文件过滤器怎么用
  20. javaweb 从数据库读取数据的详细操作

热门文章

  1. C语言 | 递归将一个整数n转换成字符串
  2. Windows下查找各类游戏存档路径
  3. 矢量化图形工具VTracer
  4. Devops常用工具软件之ansible部署使用
  5. java如何调用微信功能_Java编程调用微信分享功能示例
  6. 玩家角色信息是保存在服务器上吗,Reworld使用存储服务存储玩家的数据
  7. java 节假日_Java获取法定节假日并解析
  8. postgres 使用
  9. python 检查代码规范,类型标注
  10. 26 Three.js的聚光灯光源THREE.SpotLight