郭乾亮
郭乾亮
全部文章
【数据结构与算法】
ACM-大数/高精度(5)
ACM-搜索(1)
ACM-数学(1)
java面向对象(20)
【Arrays工具类】(1)
【c/c++/stl库】(7)
【HTML5/CSS3】(16)
【java面向对象】(21)
【MySQL】(8)
【成功是慢慢来的】(1)
【杂】(11)
【算法竞赛】(9)
未归档(96)
题解(1)
归档
标签
去牛客网
登录
/
注册
郭乾亮的博客
全部文章
/ 【数据结构与算法】
(共16篇)
七、图(定义)
一、图的定义和基本术语: 图 (1)无向图和有向图 无向图:每条边都是无方向的。 有向图:每条边都是有方向的。 (2)完全图 完全图:任意两个点都有一条边相连。 (3)权与网:图中边或弧所具有的相关数称为权。表明从一个顶点到另一个顶...
图
2019-05-18
0
852
四、(2)栈---链栈
栈的结构定义: typedef struct { SElemType *base; SElemType *top; int stacksize; }SqStack; (1)链栈的初始化: 构造空栈,栈顶指针置为空即可 Status InitStack(LinkSt...
2019-04-18
0
467
四、(3)队列---循环队列
使用循环队列的原因: 如图(d),假设当前队列分配空间最大为6,元素123456相继入队后,元素1234按顺序出队,此时不能再继续插入新的队尾元素,否则会出现数组越界而导致的程序非法操作错误,但实际上此时队列的实际空间并未占满,所以称为假溢出。 解决这一问题的方法是循环队列: 循环队列的队满...
循环队列
2019-04-18
0
592
二叉树的实现(遍历,复制,求深度,求结点)
实现效果: 测试用树: #include<iostream> using namespace std; typedef struct BiTNode {//二叉树的二叉链表存储 char data; struct BiTNode *lchild, *rchild; }BiT...
二叉树的实现
2019-04-16
0
703
六、二叉树的存储结构和遍历算法
顺序存储结构仅适用于完全二叉树,在最坏的情况下,一个深度为k且只有k个结点的单支树(树中不存在度为2的结点)却需要长度为2^k-1的一维数组。这造成了存储空间的极大浪费,所以对于一般二叉树,适合采用链式存储结构: 二叉链表存储结构: typedef struct BiTNode{ TElem...
二叉树的遍历算法
2019-04-16
0
520
六、树和二叉树(概念与性质)
树的基本概念: 结点:树中的一个独立单元。 结点的度:结点拥有的子树数量。 树的度:树中各结点度的最大值。 叶子:度为0的结点称为叶子结点或终端结点。 非终端结点:度不为0的结点称为非终端节点或分支结点。除根结点外,非终端结点也称为内部节点。 双亲和孩子:结点的字树的根称...
树和二叉树
2019-04-16
0
585
单链表的实现
效果: 单链表实现代码: #include<iostream> using namespace std; typedef struct LNode{ int data; struct LNode* next; }LNode,*LinkList; bool InitLis...
单链表的实现
2019-03-30
0
401
四、(1)栈---顺序栈
一、栈的定义和特点: 1.定义:只能在表的一端(栈顶)进行插入和删除运算的线性表。 2.逻辑结构:与线性表相同,仍为一对一关系。 3.存储结构:用顺序栈或链栈存储均可,但以顺序栈更常见。 4.运算规则:后进先出 或 先进后出。 5.实现方式:(1)初始化、(2)压栈、(3)出栈、(4)取栈顶元素...
顺序栈
2019-03-29
0
0
数据结构:有序链表的合并(合并后仍为有序链表)
void MergeList(LinkList &La, LinkList &Lb, LinkList &Lc) {//有序链表的合并 pa = La->next; //pa和pb分别是链表La和Lb的工作指针, pb = Lb->next; //分别初始化为...
有序链表的合并
2019-03-19
0
402
三、(3)单链表
1.定义: 用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。 2.单链表图解: 3.单链表的存储结构: "递归定义:" typedef struct LNode{ ElemType data; //结点的数据域 s...
单链表
2019-03-16
0
517
首页
上一页
1
2
下一页
末页