
数据结构
PETRUS.
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构 - 归并排序、计数排序
1. 归并排序归并排序:归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治算法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合成一个有序表,称为二路归并。具体方法:我们简要分析一下步骤:算法的代码片:void _MergeSort1(int* a, int left, int right,...原创 2020-05-12 10:55:12 · 253 阅读 · 0 评论 -
数据结构-交换排序
1.冒泡排序冒泡排序:重复遍历数据序列,依次比较两个相邻的元素,如果它们的顺序颠倒,就把他们交换过来。具体方法:(升序)比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要...原创 2019-10-29 19:40:38 · 899 阅读 · 1 评论 -
数据结构-插入排序
文章目录1、插入排序1.1 直接插入排序1.2 希尔排序2、选择排序2.1 选择排序2.2 堆排序3、交换排序3.1 冒泡排序3.2 快速排序4、归并排序4.1 归并排序5、计数排序1、插入排序1.1 直接插入排序1.2 希尔排序2、选择排序2.1 选择排序2.2 堆排序3、交换排序3.1 冒泡排序3.2 快速排序4、归并排序4.1 归并排序5、计数排序...原创 2019-09-27 21:28:32 · 268 阅读 · 0 评论 -
数据结构-二叉树
文章目录1、什么是二叉树2、二叉树结构3、二叉树函数接口4、函数实现4.1 构建二叉树4.2 1、什么是二叉树 二叉树是每个结点最多有两个子树的树结构。 一棵深度为k,且有2^k-1个结点的二叉树,称为满二叉树。这种树的特点是每一层上的结点数都是最大结点数。 2、二叉树结构一个二叉树结点,分为三个域,第一个域是左孩子指针,第二个域是存的数据,第三个域是...原创 2019-09-21 09:33:56 · 565 阅读 · 0 评论 -
数据结构-堆
文章目录一、堆的简介二、堆的结构三、堆的函数接口四、函数接口实现一、堆的简介 空格 换行字体颜色用法:堆通常是一个可以被看做一棵完全二叉树的数组对象。堆总是满足下列性质:堆中某个节点的值总是不大于或不小于其父节点的值;堆总是一棵完全二叉树。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。 二、堆的结构 堆是一个完...原创 2019-09-21 07:51:45 · 210 阅读 · 0 评论 -
数据结构-时间、空间复杂度
推导O()的方法:运行次数函数的加法常数用1取代运行次数函数中,只保留最高阶项把最高阶项的系数改为1一、时间复杂度时间复杂度主要是衡量一个算法的运行速度,定量描述该算法的运行时间。算法的基本操作执行次数就是该算法的时间复杂度。符号O的渐进表示法:O() 例:递归计算斐波那契: long my_fibonacci(size_t n) { return...原创 2019-06-29 15:42:28 · 321 阅读 · 0 评论 -
数据结构-顺序表函数接口实现
文章目录1、顺序表介绍2、顺序表结构体、常用函数接口3、顺序表接口的实现3.11、顺序表介绍 顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺...原创 2019-07-30 16:28:39 · 767 阅读 · 0 评论 -
数据结构-无头 单向 非循环 链表函数接口实现
文章目录1. 单向、不带头、不循环链表介绍2. 单链表结构体、常用函数接口1. 单向、不带头、不循环链表介绍无头单向非循环链表:结构简单,但是实现接口时比较繁琐,一般不会用来单独存储数据,大部分作为其他结构的子结构应用。2. 单链表结构体、常用函数接口...原创 2019-07-31 16:32:48 · 454 阅读 · 0 评论 -
数据结构-带头 双向 循环 链表函数接口实现
文章目录1. 双向、带头、循环链表介绍2. 双向链表结构体、常用函数接口 1. 双向、带头、循环链表介绍带头双向循环链表:结构最复杂,但实现接口时比较简单,一般用在单独存储数据。实际使用的很多链表数据结构大多都是带头双向循环链表。 2. 双向链表结构体、常用函数接口...原创 2019-08-01 17:19:52 · 580 阅读 · 0 评论 -
数据结构-栈和队列
文章目录1. 栈、队列 介绍1.1 栈1.2 队列2. 栈的 函数接口 及其 实现2.1 函数接口2.2 接口实现4. 队列的 函数接口 及其 实现 1. 栈、队列 介绍1.1 栈 栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后...原创 2019-08-09 11:01:58 · 184 阅读 · 0 评论