自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 7.3: Prim 算法与 Dijkstra 算法

1

2022-06-05 15:35:21 184

原创 7.2邻接表及广度优先

1

2022-06-05 15:33:06 133

原创 7.1图的遍历

1

2022-06-05 15:30:30 244

原创 6.3 n后问题

n后问题:1.问题描述:在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。2.算法设计:用n元组x[1:n]表示n后问题的解。其中,x[i]表示皇后i放在棋盘的第i行的第x[i]列。由于不允许将2个皇后放在同一列上,所以解向量中的x[i]互不相同。2个皇后不能放在同一斜线上时问题的隐约束。若两个皇后放置的位置分别是(i,j)和(k,l)

2022-05-29 18:52:02 71

原创 6.2哈夫曼树编码与解码

哈夫曼树相关的几个名词路径:在一棵树中,一个结点到另一个结点之间的通路,称为路径。图 1 中,从根结点到结点 a 之间的通路就是一条路径。路径长度:在一条路径中,每经过一个结点,路径长度都要加 1 。例如在一棵树中,规定根结点所在层数为1层,那么从根结点到第 i 层结点的路径长度为 i - 1 。图 1 中从根结点到结点 c 的路径长度为 3。结点的权:给每一个结点赋予一个新的数值,被称为这个结点的权。例如,图 1 中结点 a 的权为 7,结点 b 的权为 5。结点的带权路径长度:指的是从根结点到

2022-05-29 18:49:12 566

原创 6.1: 二叉树的构建与遍历

二叉树(Binary tree)是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个节点最多只能有两棵子树,且有左右之分[1]。二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个节点二叉树有四种遍历方...

2022-05-24 19:30:15 58

原创 压缩矩阵的转置

详见:http://data.biancheng.net/view/97.html拿图 1 中的矩阵 A 和 B 来说,其各自用三元组顺序表表示(分别用 a 和b 表示),如下图所示:图2 矩阵 A、B的三元组顺序表在三元组表的存储形式下,求稀疏矩阵 A 的转置矩阵 B ,实际上就是求由 a 得到 b:由 a 的行数、列数以及非 0 元素数可以直接得到 b 的列数、行数和非 0 元素数。 由 a 中的数据得到 b 中的数据,可采用两种方法实现:对 a 中的数据进行遍历,.

2022-05-19 17:12:27 85

原创 5.1二维数组与矩阵乘法

1.动态二维数组typedef struct TwoDArray{ int rows; int columns; int** elements;}TwoDArray, * TwoDArrayPtr;2.静态二维数组typedef struct TwoDStaticArray{ int rows; int columns; int elements[ROWS][COLUMNS];}TwoDStaticArray, * TwoDStaticArrayPtr;3.总代码.

2022-05-19 17:05:29 57

原创 数据结构3.6链队列,3.7循环队列

3.6链队列转载:链队列与链表相似,不同的是它具有对列的运算方法,存储结构和链表相同,下面是其结构示意图:这里的*Q类似于链表的头节点*head;它包含两个指向队列节点的指针front和rear;当front和rear都为NULL时队列为空;front指向队列第一个节点,rear指向最后一个节点,当两者指向同一个节点说明队列只有一个节点;还有不设头指针的链队列表示形式,这里不予说明;代码部分:#include<stdio.h>#include<malloc.h&g.

2022-05-16 19:32:31 244

原创 3.4累加求值 3.5汉诺塔问题

利用递归的思想实现累加求值#include<stdio.h>//函数从0加到nint addTo(int paraN){ if (paraN <= 0) { return 0; } else return addTo(paraN - 1) + paraN;}void addToTest() { int n, sum; printf("---- addToTest begins. ----\r\n"); n = 5; sum = addTo(n)

2022-05-12 11:12:58 60

原创 3.3表达式求值

表达式求值要创建2个栈还不会写c++,临摹学长c++代码//202031061018 刘知鑫#include <iostream>#include <cstring>#include <algorithm>#include <stack>#include <unordered_map>using namespace std;stack<int> num;stack<char> op;void

2022-05-10 21:08:19 188

原创 数据结构3.2栈---括号匹配

3.2栈的应用---括号匹配1. 介绍2.代码部分,判断括号是否匹配3.测试4.全部代码5.测试结果1. 介绍3.2栈的应用—括号匹配 现在,有一行括号序列,里面只包含()[]{}六种符号,请你检查这行括号是否配对。如:[]是匹配的([])[]是匹配的((]是不匹配的([)]是不匹配的2.代码部分,判断括号是否匹配bool bracketMatching(char* paraString, int paraLength){ //1.初始化一个栈,把'#'压入栈 CharStackPt

2022-05-09 20:05:29 414

原创 数据结构C语言:3.1栈

3.1栈 栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。1.创建结构体2.输出栈3.初始化栈4.添加元素5.弹出元素,并返回被弹出元素的值6.添加弹出元素测试7.总代码8.运行结果1.创建结构体typedef struct CharS

2022-05-09 18:15:38 94

原创 2.4多项式相加

2.4多项式相加1.定义结构体2.初始化3.打印链表4.打印结点5.构造多项式6.计算多项式相加7.测试8.全部代码9.运行结果思路:根据多项式相加的运算规则:对两个多项式中所有指数相同的项,对应系数想加,若其和不为零,则作为“和多项式”中的一项插入到“和多项式”链表中去;对于两个多项式中指数不相同的项,则将指数较小的项插入到“和多项式”链表中去。 “多项式”链表中的节点无需生成,而应该从两个多项式的链表中摘取1.定义结构体typedef struct LinkNode { int coeffici

2022-05-05 17:31:52 358 1

原创 2.3双向链表

2.3双向链表1.定义结构体2.初始化3.打印4.插入5.删除6.插入删除测试7.地址测试8.完整代码9.运行结果1.定义结构体​typedef struct DoubleLinkedNode{ char data; struct DoubleLinkedNode* previous; struct DoubleLinkedNode* next;}DLNode,*DLNodePtr;​2.初始化​DLNodePtr initLinkList(){ DLNodePtr temp

2022-05-05 15:25:27 56

原创 静态链表实现

1.定义结构体typedef struct StaticLinkedNode { char data; int next;}*NodePtr;typedef struct StaticLinkedList { NodePtr nodes; int* used;} *ListPtr;2.初始化ListPtr initLinkedList(){ //分配空间 ListPtr tempPtr = (ListPtr)malloc(sizeof(StaticLinkedList))

2022-05-02 20:26:53 608 1

原创 单链表实现

单链表

2022-04-28 12:54:04 68

原创 线性表六六六

线性表

2022-04-25 23:07:35 191

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除