随笔分类 -  数据结构学习笔记

摘要:简略的结构体讲解(基于C语言)更新时间:2019-10-25 前置技能:点点指针 结构体的定义和使用 (1)一般形式 他的一般格式只这样的(记得struct关键字哟): struct 结构体名 { 类型名1 成员名1; //成员类型可以是基本类型或构造型 类型名2 成员名2; ... 类型名n 成员 阅读全文
posted @ 2019-10-25 16:51 悲离 阅读(219) 评论(0) 推荐(0)
摘要:克鲁斯卡尔算法的基本思想是以边为主导地位,始终选择当前可用(所选的边不能构成回路)的最小权植边。所以Kruskal算法的第一步是给所有的边按照从小到大的顺序排序。这一步可以直接使用库函数qsort或者sort。接下来从小到大依次考察每一条边(u,v)。 具体实现过程如下: <1> 设一个有n个顶点的 阅读全文
posted @ 2019-05-07 20:53 悲离 阅读(444) 评论(0) 推荐(0)
摘要:本文转载自:点我转移 MST(Minimum Spanning Tree,最小生成树)问题有两种通用的解法,Prim算法就是其中之一, 它是从点的方面考虑构建一颗MST,大致思想是:设图G顶点集合为U,首先任意选择图G中的一点作为起始点a, 将该点加入集合V,再从集合U-V中找到另一点b使得点b到V 阅读全文
posted @ 2019-05-07 19:56 悲离 阅读(585) 评论(0) 推荐(0)
摘要:所谓并查集一般是两个功能,当然其他的拓展一下即可 功能一,并,就是指把两颗树并在一起 功能二,查,就是查找这个节点的根节点(根节点的根节点就是本身) emmmm对于判断我们不需要用到并的功能,因为,,,都并到一起了,还分个球的不通 接下来是用DFS算法的解法 首先我们了解一下什么是DFS 深度优先搜 阅读全文
posted @ 2019-05-05 20:11 悲离 阅读(765) 评论(0) 推荐(0)
摘要:该矩阵对角线上的数字为 1 8 9 10,在对角线两边的元素是对称的,整个矩阵满足a[i][j] = a[j][i] 当我们队该矩阵无压缩存储时,我们需要使用4*4 = 16个存储空间,但是由于它是对称的, 因此我们可以只保存矩阵的上三角或者下三角,这样我们就可以得到整个矩阵模型,而使用的存储空间也 阅读全文
posted @ 2019-04-01 16:24 悲离 阅读(1498) 评论(0) 推荐(0)
摘要:函数原型: ssert的作用是先计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。 下面是样例: 最后膜巨巨的博客:C/C++ assert()函数用法总结 - 白菜菜白 - 博客园 阅读全文
posted @ 2019-03-27 09:00 悲离 阅读(747) 评论(0) 推荐(0)
摘要:原文链接:膜大佬orz 首先我们说一下什么是KMP算法 这里贴上百度百科上的解释: KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KMP算法)。KMP算法的关键是利用匹配失败后的信息,尽 阅读全文
posted @ 2019-03-26 20:30 悲离 阅读(251) 评论(0) 推荐(1)