![](https://img-blog.csdnimg.cn/20190918140129601.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
数据结构
b1gpig安全
Debug the world.
展开
-
C语言—sort函数比较大小的快捷使用--<algorithm>头文件下
sort函数一般情况下要将一组数从的大到小排序或从小到大排序,要定义一个新的函数排序。而我们也可以直接使用在函数下的sort函数,只需加上头文件:#include<algorithm>using namespace std;sort格式:sort(首元素地址,尾元素的下一个地址,比较函数)注:比较函数不一定要有,sort函数默认为从小到大排序比较函数,当需要从打到小时就...原创 2020-04-18 14:23:24 · 3596 阅读 · 0 评论 -
C--数据结构--树的学习
6.2.1二叉树的性质1.二叉树性质:1.若二叉树的层次从1开始,则在二叉树的第i层最多有2^(i-1)个结点2.深度为k的二叉树最多有2^k -1个结点 (k>=1)3.对任何一颗二叉树,如果其叶结点个数为n0,度为2的非叶结点个数为n2,则有 n0=n2+14.具有n个结点的完全二叉树的深度为 [log₂n]+1 //log以2为底的n5.2.完全二叉树:特点:...原创 2020-04-15 16:13:15 · 296 阅读 · 0 评论 -
5-数据结构-数组的学习
5.1数组的定义定义:由一组类型相同的数据元素构成的有序集合,每个数据元素称为一个数据元素(简称元素),每个元素受n(n>=1)个线性关系的约束,每个元素在n个线性关系中的序号i1、i2…in称为元素的下标,并称为n元数组二维数组是数据元素为线性表的线性表数组没有插入和删除操作:因为数组一旦被定义,它的维数和维界就不再改变数组的基本操作:1.存取:给定一组下标,读出对应的数组元素...原创 2020-04-15 16:06:00 · 764 阅读 · 0 评论 -
4-数据结构-串的学习
4.1串类型的定义1.串:(或字符串)串是由多个字符组成的有限序列,记作:S=‘c1c2c3…cn’ (n>0)其中S是串的名字,‘c1c2c3…cn’ 是串值ci是串中字符n是串的长度,表示字符的数目空串:零个字符的串称为空串,记作“”(空)2.子串子串:串中任意连续字符组成的子序列主串:包含子串的串注意:空串是任意串的子串,任意串是他自身的子串。除它本身外,一个串的...原创 2020-04-15 15:59:58 · 575 阅读 · 0 评论 -
2.4一元多项式的表示及相加,含cpp算法
2.4一元多项式的表示及相加n阶多项式的表示:n阶多项式有n+1项指数按升幂排序【 优点:多项式的项数可以动态增长,不存在存储溢出的问题插入,删除方便,不移动元素【表示:有两个数据域,一个地址域【一元多项式的建立算法:void polycreate(Polylist &head){polylist rear,s; int c,e;head=(Poly...原创 2020-03-15 23:02:53 · 243 阅读 · 0 评论 -
2.3.3单链表的双向链表
2.3.3双向链表 插入、删除指在前驱和后驱方向都能游历(遍历)的线性链表双向链表的每个结点有两个指针域【结构】:prior data next双链表通常采用带头结点的循环链表形式可理解为首位相接的数据“圈”,每个结点都可以向前或向后走【结点指向】【插入操作】:1.分配空间2.断开与连接【操作算法status ListInsert_DuL(DuLinkList &...原创 2020-03-14 22:15:56 · 190 阅读 · 0 评论 -
2.2线性表的顺序表
2.2.1线性表的顺序表示和实现------顺序映像【顺序存储】在【查找时】的时间复杂度为【O(1)】,因为它的地址是连续的,只要知道首元素的地址,根据下标可以很快找到指定位置的元素【插入和删除】操作由于可能要在插入前或删除后对元素进行移动,所以顺序存储的时间复杂度为【O(n)】。1)初始化操作思想:构造一个空表设置表起始位置、表长及可用空间#define LIST_INIT_SIZE...原创 2020-03-14 17:48:50 · 136 阅读 · 0 评论 -
2.3单链表的基本使用及其cpp示例
2.3线性表的链式表现与实现2.3.1.1单链表【特点:*用一组任意的存储单元存储线性表的数据元素*利用指针实现用不同相邻的存储单元存放逻辑上相邻的元素*每个元素ai,除存储本身信息外,还存储其直接后继的元素(后一个元素的地址)*结点:数据元素ai的存储映像{数据域:数据元素本身指针域:指示直接后继的存储位置【头指针、头结点、第一个元素结点*头指针:以线性表的第一个数据元素a1...原创 2020-03-14 17:58:03 · 218 阅读 · 0 评论 -
第2章线性表的基本使用及其cpp示例(第二章汇总,线性表都在这里)
2.1线性表的定义和特点【类型定义:*是n个元素的有限序列*除了第一个元素没有直接前驱和最后一个没有直接后驱之外,其余的每个元素只有一个直接前驱和直接后驱;(a1,a2…an)【特征:*有穷性:由有限个元素组成,元素个数表长度 n=0空表(a1,a2…an),称下标i为线性表的位序*有序性: 线性表元素之间存在严格次序关系(序偶关系)*同一性:线性表属于同类数据元素组...原创 2020-03-14 17:42:32 · 441 阅读 · 0 评论 -
实验报告:抽象数据类型的表现和实现
实验报告:抽象数据类型的表现和实现实验内容基本要求:设计实现抽象数据类型“三元组”,要求动态分配内存。每个三元组由任意三个实数的序列构成,基本操作包括:创建一个三元组,取三元组的任意一个分量,置三元组的任意一个分量,求三元组的最大分量,求三元组的最小分量,显示三元组,销毁三元组等。/* Auther: X Date:2020/2/15 Description: 数据结构与算法...原创 2020-03-14 16:46:33 · 1052 阅读 · 1 评论 -
实验报告: 线性表的基本操作及应用
实验报告: 线性表的基本操作及应用实验内容基本要求:(1)实现单链表的创建;(2)实现单链表的插入;(3)实现单链表的删除(4)实现单链表的查找;(5)实现单链表的显示;/* Name:Linklist operation.cpp Author:X Date:2020/3/13 Description: 线性表的基本操作及应用*/#include&...原创 2020-03-14 16:52:52 · 1369 阅读 · 0 评论 -
三元组数据处理系统
include<stdio.h>include<stdlib.h>define OK 1define ERROR 0define OVERFLOW -2typedef int Status;typedef float ElemType;typedef ElemType *Triplet; // 声明Triplet为ElemType指针类型//三元组的初始化...原创 2020-03-07 15:14:41 · 609 阅读 · 0 评论 -
【数据结构1.3笔记】研究内容
1.3研究内容数据结构(D,S){逻辑结构:{物理结构(存储结构){数据的运算1.逻辑结构1 集合:集合,没有逻辑关系2 线性结构 “一对一”3树形结构 层次关系4图形结构练习:{【图】1画出逻辑结构图、}2.数据的物理结构(存储结构)【两种方式】存储结构在存储器的一个映射【顺序存储:即逻辑上相邻的数据元素存在物理上相邻的存储单元【链式存储:通过附加指针手段表示...原创 2020-02-21 12:17:11 · 183 阅读 · 0 评论 -
【c语言数据结构笔记】1.2 数据结构
1.2数据结构数据元素并独立结构=实体+关系形式定义(D,S)其中D是数据元素的有限集,S是D上关系的有限集eg:12位数次序关系<a1,a2><a2,a3>遵守次序关系eg:一维数组简化方式c次序表达:<ai,ai+1|i=1,2,3,4,5>eg:复数 complex+(C,R)小结:相互之间存在一种或多种特定数据关系的数据元素的集合;...原创 2020-02-20 23:30:18 · 131 阅读 · 0 评论