
学习算法
jjyyyyyy
这个作者很懒,什么都没留下…
展开
-
深搜入门——部分和问题
深度优先搜索策略运用递归思想问题截图深搜思想:每一个元素加或者不加,一共是2^n种情况初学深搜的笔记tips 1:-如果有一个元素,想要作为全局元素,又没必要一个一个作为实参调用进每个函数,可以用全局定义变量的方式,直接在开头进行定义。tips 2:-深搜其实就是递归,适用于小规模的问题,大规模一般不用。tips 3:-如果是判断正误的题,巧用C++的bool返回值进行判断...原创 2019-03-10 15:01:15 · 529 阅读 · 0 评论 -
leetcode题解
刷题一时爽,一直刷题一直爽~整理这几天刷的有关leetcode字符串部分的题解。5. Longest Palindromic Substring题意:清晰明了,给定一个字符串,求最长回文字串。解题过程:开局除了暴力想不出其他的解法(扣脚…),但下一秒突然想到了kmp算法中的next数组,总觉得很像,next数组是求最长、相等的真前缀和真后缀,这个是求最长、中心对称相等的字串,然后搜了一下,...原创 2019-06-15 12:45:20 · 219 阅读 · 0 评论 -
Leetcode持续更新
7.7日记12. Integer to Roman题目大意:给出罗马数字的表示方式,给定一个数字,要求写出它所对应的罗马数字解题过程:这题坑就坑在4\9\49这样的数字的表示但是!我们可以直接把这些数字所对应的罗马数字拿出来,专门做为一种表示方法。这样每种情况就对应一种罗马数字。代码如下——class Solution {public: string intToRoman(...原创 2019-07-08 10:46:42 · 363 阅读 · 0 评论 -
算法之——并查集
欢迎收看今天的算法课堂,今天的主要内容有 并 查 集 和 并 查 集 和 并 查 集首先是并查集所能解决的主要问题——连接问题和路径问题,其思想是将所相连的点连成树,用一个数组记录每一个节点的前驱,如果是单个的点,前驱就是自己,方便并查的操作并查集主要是两种操作,并(union)和查(find)union & find并主要是指将两个节点连接在一起或是将两棵树连接在一起,如果...原创 2019-07-29 16:05:48 · 277 阅读 · 0 评论 -
最小生成树算法
顾名思义,这是用来解决联通图中,遍历所有的点,花费权值之和最小的算法解决问题有两种方法,第一个是遍历所有的边,第二个是遍历所有的点Kruscal算法总的思想其实很容易理解,对于连通图来说,最小的边一定属于最小生成树,这里就不给证明了,是用反证法求证。所以得到了所有的边之后,对结构体数组进行排序,将边由小到大进行排序,然后不断的遍历,只要一条边上两端的端点#include <io...原创 2019-08-03 14:50:57 · 224 阅读 · 0 评论