![](https://img-blog.csdnimg.cn/20201120171036984.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构和算法
数据结构和算法
IT技术学习
学习很重要
展开
-
数据结构理解——存储结构&逻辑结构
一、存储结构存储结构就是数据在内存中的存储形式连续的内存空间存储===》顺序存储结构 不连续的内存空间存储===》链式存储结构每块内存之间都过保存其他内存地址实现链接起来二、逻辑结构(根据问题,想象出来的数据之间的关系)三、关系1.基本上,每一种逻辑结构,都可以用顺序存储或链式存储去实现,2.顺序存储 用 数组来模拟。链式存储 用结构体+指针来模拟。3.比如线性表,咱们可以使用顺序...原创 2021-11-11 15:41:53 · 2923 阅读 · 1 评论 -
python学习笔记——递归函数
递归:递推、回归一、案例,计算1到number之间所有整数和1.代码def mysum1(number): #递推判断条件 if number == 1: return 1 else: return number + mysum1(number-1) mysum1(3) 2.图解3.个人理解:1.通过迭代遍历实现1+2......n,是从已知到未知2.递归方式: n+n-1+n-2+......1,是从..原创 2021-04-28 00:37:34 · 193 阅读 · 0 评论 -
面试官问你:程序=算法+数据结构,能深入讲讲吗?
3文章目录 前言 程序=算法+数据结构 算法 时间复杂度 空间复杂度 数据结构 数组 链表 树 散列表 堆 图 结尾 前言大家好,我是你们的老朋友青戈,最近一位粉丝私信我倾诉自己面试的悲惨经历,说自己快毕业了,很多同学们都找到了满意的offer,唯独他自己面试被虐的很惨,到现在一个offer都没有,着急的不行。细聊下来才知道,他学的专业是自动化,但是呢本专业的工作实在难找,于是把目光转...转载 2020-12-22 09:58:48 · 904 阅读 · 0 评论 -
逻辑结构与物理结构
逻辑结构(数据对象中数据元素之间的相互关系): 集合结构:集合结构中的数据元素除了属于一个集合外,他们之间没有其他关系。 线性结构:线性结构中的数据元素之间是一对一的关系。 树形结构:树形结构中的数据元素之间存在一对多的层次关系。 图形结构:图像结构的数据元素是多对多的关系。 物理结构(指数据的逻辑结构在计算机的存储形式): 顺序存储结构:是把数据元素存储到地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。 链式存储结构:是把数据元素放到任意的存储单元中,这组..转载 2020-11-20 16:50:32 · 1833 阅读 · 0 评论 -
数据结构之逻辑结构与物理结构(存储结构)
1.逻辑结构:逻辑结构分为四种类型:集合结构,线性结构,树形结构,图形结构。1.1 所谓集合结构:表面意思,没有什么深刻意义,就是数据元素同属一个集合,单个数据元素之间没有任何关系。如下图所示。 1.2 线性结构:类似于线性关系,也就是说,线性结构中的数据元素之间是一对一的关系。注意:重点在一对一。如下图所示。 ...转载 2020-11-20 16:44:45 · 2745 阅读 · 0 评论 -
算法、数据结构、数据类型的个人理解
算法就是做一件事的方法条条大路通罗马,但是我们要尽可能选取最优算法。一般通过两方面考量算法优劣:1.时间复杂度: 执行时间=执行次数 如果调用了方法,要看看这个方法的执行次数。 用到的方法可能是数据类型的方法,所以数据类型的不同的增删改查操作,执行次数也不同,数据类型的选取也影响算法的优劣。2.空间复杂度: 每一步执行需要的内存,(在循环里,如果每次循环都新建变量的话,内存随着循环次数的增大而增大)...原创 2020-11-18 17:19:39 · 392 阅读 · 0 评论 -
数据结构与数据类型区别
文章目录 数据结构 什么是结构 什么是数据结构 逻辑结构 物理结构 数据类型 参考 数据结构什么是结构结构是指在一个系统或者材料之中,互相关联的元素的排列、组织。结构按类别可分为等级结构(有层次的一对多)、网格结构(多对多)、晶格结构(临近的个体互相连接)等。什么是数据结构相互之间存在一种或多种特定关系的数据元素的集合,包括逻辑结构和物理结构。定义...转载 2020-11-05 13:30:01 · 9169 阅读 · 2 评论 -
程序员每天都在使用的 数据结构+算法
引言经常能够听到这样的声音,都知道数据结构重要,但是开发中,几乎用不到。其实我们每天都在用,只是不关注。或者说换成了另外的一种形式,比如STL。程序设计还记得这个经典公式吗?程序=算法+数据结构数据结构(Data Structure):逻辑数据结构在计算机中的存储表达,支持相应的操作 算法(algorithhm):对特定问题求解过程的描述方法 程序(program):算法在...转载 2020-03-27 12:29:22 · 224 阅读 · 0 评论 -
【数据结构】数据结构知识思维导图
数据结构知识思维导图:思维导图源文件:链接:https://pan.baidu.com/s/1Z44pX_jn3P6L4BSS13WmUA提取码:zmga转载 2020-03-27 12:22:05 · 548 阅读 · 0 评论 -
数据结构的分类
数据的逻辑结构可分为两大类:一类是线性结构,一类是非线性结构。线性结构中有且仅有一个开始结点和一个终端结点,并且所有的结点最多只能有一个前驱和一个后继。线性表是典型的线性结构。非线性结构的一个结点可能有多个前驱和后继。如果一个结点最多只有一个前驱,而可以有多个后继,这种结构就是树。树是最重要的非线性结构之一。如果对结点的前驱和后继的个数不做限制,这种结构就是图。图是最一般的非线性结构。数据的...转载 2020-03-27 12:14:21 · 2422 阅读 · 0 评论 -
插入排序
参考链接1:十大经典排序算法参考链接2:插入排序1. 算法步骤将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。)2. 动图演示动图解释:未排序的数据已排序的数据索引...原创 2020-03-27 12:04:44 · 95 阅读 · 0 评论 -
选择排序
参考链接1:十大经典排序算法参考链接2:选择排序一. 算法步骤1.首先找到最小(大)元素,存放到排序序列的起始位置:(先通过索引存储,比完一轮换位置) 假设索引0是小(大)元素,然后索引1到最后一个,逐个比较。 每一次比较,都将 最小(大)元素的索引存起来。 直到比完第一轮,第一个位置元素与最小(...原创 2020-03-27 11:18:15 · 201 阅读 · 0 评论 -
对编程的理解
1.冯诺依曼计算机的输入和输出2.程序、数据结构、算法、输入数据、输出数据。1.程序的数据来源可能是内置的,比如说写程序的时候,定义的变量。...原创 2019-12-18 13:24:49 · 553 阅读 · 0 评论 -
为什么要学数据结构?
文章目录一、前言二、为什么要学数据结构三、数据结构无处不在3.1 数据库3.2 操作系统3.3 文件压缩3.4 游戏四、数据结构类型一、前言在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件:1) 能够熟练地选择和设计各种...转载 2019-12-04 19:15:12 · 284 阅读 · 0 评论 -
冒泡排序
参考链接1:十大经典排序算法参考链接2:冒泡排序def bubbleSort(arr): for i in range(0,len(arr)-1): for j in range(0,len(arr)-1-i): if arr[j]>arr[j+1]: arr[j],arr[j+1] = arr[j+1...原创 2019-11-03 09:58:17 · 147 阅读 · 0 评论