喵嗷呜~
喵嗷呜~
全部文章
算法与数据结构
C/C++(1)
Database(1)
Java基础(23)
Java虚拟机(2)
Maven(1)
Spring(18)
Spring Data Jpa(1)
《数据库系统概论》(5)
在线编程(4)
未归档(7)
源码阅读(1)
算法思想(2)
软件开发原则(4)
软件设计模式(1)
配置(2)
问题解决(5)
归档
标签
去牛客网
登录
/
注册
喵嗷呜~的博客
全部文章
/ 算法与数据结构
(共13篇)
通过前序遍历、中序遍历、后序遍历的结果,逆推二叉树。
二叉树遍历 1.前序遍历(Pre-order Traversal) ①读取当前树根结点 ②若存在左子树,对左子树执行①②③ ③若存在右子树,对右子树执行①②③ 2.中序遍历(In-order Traversal) ①若存在左子树,对左子树执行①②③ ②读取当前树根结点 ③若存在右子树,...
2020-03-27
0
851
二路归并排序学习笔记
二路归并排序 分治法 分治法基本思想 将一个问题分解成若干个规模更小的子问题,子问题相互独立且与原问题性质相同,通过子问题的解,合并出原问题的解。 怎样的问题适合通过分治法解决? 该问题的规模缩小到一定规模就容易解决。 该问题能够分解成若干个规模更小的子问题,即该问题具有最优子结...
2020-03-20
0
367
大顶堆构造过程
大顶堆性质 堆是一种特殊的完全二叉树,使用数组存储二叉树时,若某个非叶子节点存储在下标为i的位置,其左右孩子节点分别存储在下标为2i+1和2i+2的位置。 堆可以分为大顶堆和小顶堆,对大顶堆来说,任意非叶子节点不小于其左右孩子节点,对于小顶堆来说,任意非叶子节点不大于其左右孩子节点。若使用数...
2020-03-14
0
447
快速排序学习笔记
快速排序 排序过程 基本思想 快速排序和冒泡排序一样,是一种基于比较和交换的排序算法,快速排序基于分治法思想,对冒泡排序进行了优化。 其基本思想为:从序列中挑选一个基准元素,将序列划分成两个部分,其中一部分的元素比另一部分的元素小,然后对这两部分分别重复上述过程...
2020-03-12
0
396
希尔排序学习笔记
希尔排序 排序过程 基本原理 直接插入排序在处理规模较小、有序程度较高的序列时效率较高,希尔排序以此为出发点,对直接插入排序进行优化,其基本原理为: (1)确定增量,将序列从逻辑上划分成若干个子序列。 (2)使用直接插入排序处理子序列。 ...
2020-03-10
0
334
直接插入排序学习笔记
直接插入排序 排序过程 基本原理 对长度为n的序列A进行排序,假设序列中存在两个区间——有序区间[ 0 , i ]、无序区间[ i+1 , n-1 ] (1)遍历有序区间[ 0 , i ],找到一个合适的位置插入无序区间[ i+1 , n-1 ]中的元素A[i+1];...
2020-03-09
0
323
选择排序学习笔记
选择排序 选择排序与冒泡排序十分相似,排序过程中实际上把序列分成了两部分——待排序部分和已排序部分,每次遍历都会从待排序部分找到一个极值元素添加到已排序部分。 排序过程 基本原理 遍历序列,找出序列中的最小元素,然后将最小元素交换到序列第一个元素的...
2020-03-09
0
402
冒泡排序学习笔记
冒泡排序 排序过程 基本原理 从序列头开始,进行若干次遍历(第一次遍历的结束位置为序列尾,每进行一次遍历结束位置向前移动一位),遍历过程中比较相邻的两个元素,根据比较结果以及预期的排序效果,交换元素的位置,每一遍历结束,会有一个元素被“挪动”到正确的位置,最后一次遍历结束,序列达到...
2020-03-07
0
239
二叉树
1、树结构常见概念 度:结点拥有的子树的数量被称作结点的度。 叶子结点:度为零的结点被称作叶子节点,也叫终端结点。 分支结点:树中除了叶子结点以外的其他结点被称作分支结点,也叫非终端结点。 根结点:根结点是特殊的分支结点,根结点没有父结点。 树的度:树内部各结点度的最大值被称作树的度...
2019-11-23
0
335
列表
1、列表和链表 列表是一种数据结构,是一种概念性表示法,链表是一种具体的实现策略,列表和栈、队列一样可以用数组和链表实现。 2、栈、队列、列表 列表和栈与队列一样,是一种线性结构,但列表更加一般,栈和队列只能在集合末端进行元素的增加和删除,列表可以在集合中间和末端进行元素的增加和删除。...
2019-10-13
0
263
首页
上一页
1
2
下一页
末页