![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
个人学习算法过程中的总结
shenziming_hitcs
printf("Hello world!\n");
展开
-
蓝桥杯-大臣的旅费-树的直径
题目蓝桥杯历届习题中有一道题叫大臣的旅费,题目是这样的:乍一看这题可以使用DFS,对每个点都用一次DFS,求得最大的旅费(路径权值)即可。但不幸的是,这么做复杂度实在是太高了,压力测试超时了。。。于是就上网找各位网友的答案,发现这道题的考点是树的直径,用两遍DFS即可得出答案。树的直径在一棵树中,树的直径是两个结点的最大距离(认为树中的边权值非负),要求得这一距离,可以用两遍DF...原创 2020-02-28 18:40:56 · 449 阅读 · 0 评论 -
求全排列的两种方法(Java)
递归法假设我们有0,1,2,3四个数需要全排列,递归法是一种比较类似于深度搜索的方法,直到递归最深处,才得出结果。其大概思路是,设置一个游标start,游标所到之处,其左侧已经考虑过,利用递归思想求剩下的全排列。仔细分析,依次考虑每一位数。由于对于每一位数,它可能的数包括除了之前考虑过的所有数,因此将start右侧(包括start)的所有数都和start这一位交换一次,每交换后,马上进入递归...原创 2020-02-25 19:44:55 · 2693 阅读 · 0 评论 -
状态压缩动态规划(Java)
本人在准备蓝桥杯的过程中,刷到了这么一道题,是2019年蓝桥杯省赛Java A组的一道题,题目如下:我本来打算来一手贪心,万万没想到,恕我才疏学浅,此题的主流解法使用状态压缩动态规划(状压dp)。无奈,百度之,学习。总结下来各位博主的博客,用状压dp做题的突出特征,就是此题的空间规模,有着特殊“小”的特点,比如上面这道糖果题,N,M,K都可以设置的很大,用来对我们的代码做压力测试,但是反...原创 2020-02-23 20:38:05 · 763 阅读 · 1 评论