- 博客(24)
- 资源 (2)
- 收藏
- 关注
原创 No module named ‘mcubes‘
安装如下 pip install pymcubes。遇到这个问题 可以尝试换成PyMCubes。
2023-09-06 23:09:13
4629
1
原创 图-最小生成树-Prim
struct{ VertexType adjvex; //U集中的顶点序号 VRType lowcost; //边的权值}closedge[MAX_VERTEX_NUM];int LocateVex(MGraph G,VertexType v)//返回点v在G.vexs中的下标{ for(int i=0;i!=G.vernum;i++){ if(G.vers[i]==v) return i; } retur.
2021-11-02 16:33:53
205
原创 数据结构-图-深度优先遍历(DFS)
深度优先遍历(Depth_First_Search),也称为深度优先搜索,简称DFS深度优先遍历其实就是一个递归的过程,就像一个树的前序遍历。连通图:它从一个图中某个顶点V出发,访问此顶点,然后从v的未被访问的邻接点出发深度优先遍历图,直至图中所有和V有路径相通的顶点都被访问到。对于非连通图: 只需要对他的连通分量分别进行深度优先遍历,即在先前一个顶点进行一次深度优先遍历后,若图中还有顶点没有被访问,则另选图中未被访问的顶点作为起始点,重复上述过程,直到图中...
2021-10-24 01:26:58
7644
原创 数据结构-二叉树-课后习题-编写一个递归算法,利用叶结点中空的指针域,将空结点自左向右连接成一个链表
思路:将二叉树的叶子结点转换成单链表,并返回最左叶子结点的地址(链头))即可用先序遍历 找到结点并且将其连接连接成链表就可以了此处先序遍历建立的二叉树为下如所示:(ABD#G###CE##F##)//---编写一个递归算法,利用叶结点中空的指针域,将空结点自左向右连接成一个链表---////二叉链表 存储表示#include<stdio.h>#include<stdlib.h>typedef struct BiTNode{ c...
2021-10-22 20:29:57
582
原创 数据结构-二叉树-求位于二叉树先序序列中第k个位置的结点的值
思路:待查节点的存在性: 当二叉树为空树,或者k非法时,待查节点不存在! 函数应返回待查结点是否存在的状态指示;TRUE和FALSE 当待查找的结点存在时,需进一步返回该结点的数值问题1:该算法需要返回多个值,如何处理? 答:一种做法是用返回值返回存在性,用变参返回值。问题2:该算法可以基于二叉树的先序遍历的递归算法来构造,如何知道当前访问的节点是先序序列中的第几个结点呢? ...
2021-10-22 00:08:36
2221
原创 数据结构-二叉树-假设二叉树采用二叉链存储结构,设计一个算法输出值为x的结点的所有祖先。(递归&非递归)
这里采用先序遍历创建二叉树,可以使用ABD#G###CE##F## 来进行实验#include<stdio.h>#include<stdlib.h>#define MaxSize 100;#define STACK_INIT_SIZE 100//2.假设二叉树采用二叉链存储结构,设计一个算法输出值为x的结点的所有祖先。typedef struct BiTNode{ char data; struct BiTNode* lchild; s
2021-10-20 09:40:02
4927
1
原创 数据结构-顺序栈
#include<stdio.h>#include<stdlib.h>//约定:top指向栈顶元素的下一个位置#define STACK_INIT_SIZE 100#define STACKINCREMENT 1//严蔚敏版数据结构给的OK 和 Error//OK 1 不OK(Error) 0#define OK 1#define ERROR 0typedef struct{ int* base; int* top; int s.
2021-10-19 20:27:26
240
原创 数据结构-树-假设二叉树采用二叉链存储结构,设计一个算法输出从根节点到每个叶子节点的路径逆序列
思路:通过非递归的后序遍历算法。将访问的结点改成,判断该结点是否是叶子结点,如果是则输出栈中所有的结点,即为从根节点到该叶子结点的路径逆序列。这里用先序遍历创建二叉树,例如:ABD#G###CE##F##输出:G->D->B->AE->C->AF->C->A#include<stdio.h>#include<stdlib.h>#define MaxSize 100//1.假设二叉树采用二叉链存储结构,设计..
2021-10-18 01:27:50
4758
原创 数据结构-树课后题-编写非递归算法,求二叉树中叶子结点的个数
以先序遍历为例创建二叉树以及求叶子节点的个数测试:ABD#G###CE##F##//编写非递归算法,求二叉树中叶子结点的个数#include<stdio.h>#include<stdlib.h>#define MaxSize 1000typedef struct BiTNode{ char data; struct BiTNode* lchild; struct BiTNode* rchild;}BiTNode,*BiTree..
2021-10-17 21:26:20
3092
原创 数据结构-线性表课后习题14-设计一个算法在带头结点的非空单链表L中第一个最大值节点(最大值节点可能有多个)之前插入一个值为x的结点
设计一个算法在带头结点的非空单链表L中第一个最大值节点(最大值节点可能有多个)之前插入一个值为x的结点使用maxpos 记录第一个最大值节点所出现的位置, 之后进行简单的单链表插入即可。代码如下:#include<stdio.h>#include<stdlib.h>//设计一个算法在带头结点的非空单链表L中第一个最大值节点(最大值节点可能有多个)之前插入一个值为x的结点typedef struct LNode { int data; str
2021-09-26 22:13:23
12603
5
原创 数据结构-线性表课后习题15-设有一个带头结点的单链表L,节点的结构为(data,next),其中data为整数元素,next为后继节点的指针······
设有一个带头结点的单链表L,节点的结构为(data,next),其中data为整数元素,next为后继节点的指针,设计一个算法,首先按递减次序输出该单链表中各节点的数据元素,然后释放所有节点占用的存储空间,并要求算法的空间复杂度为O(1)这里就是用了一个简单的线性表排序,感兴趣的排序方法大家可以去搜一下。代码如下:#include<stdio.h>#include<stdlib.h>//设有一个带头结点的单链表L,节点的结构为(data,next),其中data为
2021-09-26 22:10:46
3151
1
原创 数据结构-线性表-课后题13一个线性表(a1,a2,···,an)(n>3)采用带头结点的单链表L存储,设计一个高效算法求中间位置的元素(即序号为[n/2]的元素)。
#include<stdio.h>#include<stdlib.h>//一个下你星标typedef struct LNode { int data; struct LNode* next;}LNode;void Create(LNode*& L, int n){ L = (LNode*)malloc(sizeof(LNode)); L->next = NULL; LNode* p; LNode* q .
2021-09-25 20:51:44
3597
1
原创 单链表反转代码+粗解
最后L->next =p;即将p的链表和L尾部接上。#include<stdio.h>#include<stdlib.h>typedef struct LNode { int data; struct LNode* next;}LNode;void Create(LNode*& L, int n){ L = (LNode*)malloc(sizeof(LNode)); L->next = NULL; ...
2021-09-25 20:23:58
76
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人