
数据结构
文章平均质量分 65
暮丶凉
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
kruskal算法和Prim算法
最小生成树设R为G的所有生成树的集合,若T为R中边的权值之和最小的那颗生成树,则T称为G的最小生成树(Minimum-Spanning-Tree, MST)Prim算法(邻接矩阵的存储结构)初始时从图中任取一顶点加入树中,此时树中只含有一个顶点,之后选择一个与当前T中顶点集合距离最近的点,并将该顶点和相应的边加入T,每次操作后T中的顶点数和边数都增加1。以此类推,直至图中所有的顶点都并入T,得到的T就是最小生成树。此时T中必然有n-1条边。void Prim(MGraph G){ bool vi原创 2021-03-06 22:43:02 · 526 阅读 · 0 评论 -
LeetCode题库练习之无重复字符的最长子串
参考自https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/solution/hua-dong-chuang-kou-by-powcai/题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。解题思路:运用滑动窗口的思想,从字符串第一个位置开始遍历,当出现重复...原创 2019-11-13 22:50:15 · 204 阅读 · 0 评论 -
LeetCode题库练习之两数之和
给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum著作转载 2019-11-12 16:26:46 · 207 阅读 · 0 评论 -
拓扑排序
拓扑排序在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网,我们成为AOV网(Activity On Vertex Network)。AOV网中的弧表示活动之间存在的某种制约关系,设G=(V,E)是一个具有n顶点的有向图,V中的顶点序列v1,v2,…,vn,满足若从顶点vi到vj有一条路径,则在顶点序列中顶点vi必在顶点vj之前。则我们称这样的顶点序列为一个拓扑序列。#include "stdio.h" #include "stdlib.h"原创 2020-05-31 14:31:12 · 144 阅读 · 0 评论 -
图的邻接矩阵,邻接表,DFS,BFS的实现
#include <iostream>#include<string.h>using namespace std;#define MAXVEX 100 //最大顶点数#define INFINITY 65535 //65535代表∞typedef struct{ char vexs[MAXVEX]; //顶点表 int arc[MAXVEX][MAXVEX]; // 邻接矩阵,看作边表 int numVertexes, numEdges; // 图中的顶点数和边原创 2020-05-31 14:24:16 · 858 阅读 · 0 评论 -
c++线索二叉树
线索二叉树前序创建二叉树以及中序遍历创建线索二叉树#include <iostream>#include<string.h>using namespace std;// Link==0表示指向左右孩子指针, Thread==1表示指向前驱或后驱的线索typedef enum {Link, Thread} PointerTag; // 二叉线索存储结点typedef struct BiThrNode{ char data; struct BiThrNode原创 2020-05-14 19:26:56 · 275 阅读 · 0 评论 -
c++队列
队列队列其实就是简单的链表,只是添加了队头和队尾指针。限制了添加和删除只能从队尾和队头操作。代码实现#include <iostream>using namespace std;// 结点typedef struct QNode{ int data; struct QNode *next;}QNode, *QueuePtr;// 链表结构typedef struct{ QueuePtr front, rear; // 队头,队尾指针}LinkQueue;原创 2020-05-13 15:57:44 · 1224 阅读 · 0 评论 -
c++链表
#include <iostream>#include <time.h>using namespace std;struct Node{ int data; struct Node *next;};typedef struct Node *LinkList; //定义LinkList类型// 创建链表// 头插法void CreateListHead(LinkList *L, int n){ LinkList p; int i; *原创 2020-05-10 14:25:21 · 201 阅读 · 0 评论