- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 ACM总结二十二
最短路径算法 边带有权值的图称为带权图。边的权值可以理解为两点之间的距离。一张图中任意两点间会有不同的路径相连。最短路径就是指连接两点的这些路径中最短的一条。 一、求出最短路径的长度 以下没有特别说明的话,dis[u][v]表示从u到v最短路径长度,w[u][v]表示连接u,v的边的长度。 1.Floyed-Warshall算法 O(N3) 简称Floyed(弗洛伊德)算法,是最简单的最短路径算法...
2019-05-25 22:57:09 117
原创 ACM总结二十一
图的遍历 一、深度优先与广度优先遍历 从图中某一顶点出发系统地访问图中所有顶点,使每个顶点恰好被访问一次,这种运算操作被称为图的遍历。为了避免重复访问某个顶点,可以设一个标志数组visited[i],未访问时值为false,访问一次后就改为true。 图的遍历分为深度优先遍历和广度优先遍历两种方法,两者的时间效率都是O(n*n)。 1.深度优先遍历 深度优先遍历与深搜DFS相似,从一个...
2019-05-22 23:55:28 128
原创 ACM总结二十
图论,基本概念 能理解多少是多少,为以后学数据结构打好基础。 图的定义:严格意义上讲,图是一种数据结构,定义为:graph=(V,E)。V是一个非空有限集合,代表顶点(结点),E代表边的集合 有向图:图的边有方向,只能按箭头方向从一点到另一点。 无向图:图的边没有方向,可以双向。 结点的度:无向图中与结点相连的边的数目,称为结点的度。 结点的入度:在有向图中,以这个结点为终点的有向边的数目。 结点...
2019-05-18 23:23:33 384
原创 ACM总结十九
堆的定义 堆结构是一种数组对象,它可以被视为一棵完全二叉树。树中每个结点与数组中存放该结点中值的那个元素相对应。 堆的性质 设数组A的长度为len,二叉树的结点个数为size,size≤len,则A[i]存储二叉树中编号为i的结点值(1≤i≤size),而A[size]以后的元素并不属于相应的堆,树的根为A[1],并且利用完全二叉树的性质,我们很容易求第i个结点的父结点(parent(i))、左孩...
2019-05-15 22:54:13 127
原创 ACM总结十八
总结一下二叉树的存储结构和三种遍历 “父亲表示法”优点容易找到树根但找孩子需要遍历整个表格 “孩子表示法”缺点:只能从父结点遍历到子结点,不能从某个子结点返回到它的父结点。 “父亲孩子表示法”一个数据域和二个指针域(一个指向若干个子结点,一个指向父结点) “孩子兄弟表示法”一个数据域和二个指针域(一个指向第一个子结点,另一个指向下一个兄弟结点) 先序遍历:访问根节点,遍历左子树,遍历右子树; 中序...
2019-05-11 23:07:23 89
原创 ACM总结十七
总结一下这几天学的数据结构,数据结构以前也零零散散的接触过,但是没有系统的理解。第一种数据结构,栈,栈是一种只能在某一端插入和删除的特殊线性表。删除和插入都在一端这一端被称为栈顶,另一端被称为栈底,插入一般被称为进栈(栈指针加一),删除被称退栈(栈指针减一)。队列与栈不同,队列在一端删除(出队),在另一端插入(入队)。队列用数组A[m+1]来存储,数组的上界m即是队列的最大容量。队列的运算中需设定...
2019-05-08 23:24:43 112
原创 ACM总结十六
这几天做的二分的题很多,三分法的题不是那么多,今天总结一下三分用法。当答案具有可二分性时,我们可以用二分答案来解决。但是,如果要求出凸性函数或凹性函数的最值时,二分就毫无用武之地了,这时,我们就可以用三分法来求出答案。 一个凸性序列/凹性序列通俗的说法就是在该序列最大值/最小值的左边满足不严格单调递增/递减,右边满足不严格单调递减/递增。与二分法类似的是,三分法也先取下界(记作l)和上界(记作r)...
2019-05-04 23:06:57 84
原创 ACM总结十五
在做题中发现,二分查找类型的题最关键的两个部分就是查找连续函数和验证条件的函数。验证条件函数就是将当前状态的解与目标解进行比较(或利用当前状态的解判断是否符合条件)。连续查找函数再根据验证条件函数的返回值来判断边界的移动。像题目里给了两个确定的参数求最大值或最小值,如n根网线切成k段求可切成最长长度。这里n和k是确定的参数,最长长度是代求量。利用连续查找函数套用验证函数效率最高。还用一点小技巧也要...
2019-05-01 23:10:02 108
eclipse与Hibernate整合相关资源
2020-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人