以leetcode上的一个题目为例子。 连接 解题思路: 举个例子。word1 = abcd word2=abce.将word1变为word2.假设我们均考虑到第4个字符,d!=e, 直接替换 也就是前三个字符需要的次数+1。 把d删除掉,让第三个字符c和word2的第四个字符匹配,在d的后边添加一 ...
分类:
其他好文 时间:
2020-07-13 15:26:01
阅读次数:
53
string str;//文件路径int pos=str.find_last_of("/"); str=str.substr(0,pos); vector<string > filenames;while(_access(str.c_str(),0) 1){ pos=str.find_last_of ...
分类:
编程语言 时间:
2020-07-13 13:54:40
阅读次数:
94
class Solution { vector<vector<pair<int,double> > >v; public: double maxProbability(int n, vector<vector<int>>& edges, vector<double>& succProb, int s ...
分类:
其他好文 时间:
2020-07-12 22:32:44
阅读次数:
79
LINK:骑士 本来是不打算写的 发现这道题在tarjan的时候有一个坑点 所以写出来记录一下。 可以发现图可能是不连通的 且一个连通块中是一个奇环树。 做法:类似tarjan找割点 然后把环给拉出来 枚举环首是否选择 分类讨论即可。 一个坑点是 找环的时候 因为不是建立圆方树所以栈中存有上个连通块 ...
分类:
其他好文 时间:
2020-07-12 20:35:39
阅读次数:
61
link class Solution { public: int n; double eps=1E-6; const int dx[4]={-1,0,1,0}; const int dy[4]={0,1,0,-1}; double getMinDistSum(vector<vector<int>> ...
分类:
其他好文 时间:
2020-07-12 19:05:29
阅读次数:
75
何为同步容器:可以简单地理解为通过 synchronized 来实现同步的容器,如果有 多个线程调用同步容器的方法,它们将会串行执行。比如 Vector,Hashtable, 以及 Collections.synchronizedSet,synchronizedList 等方法返回的容器。 可以通过 ...
分类:
其他好文 时间:
2020-07-12 18:28:12
阅读次数:
56
更多内容详见:《The C++ Programming Language》第32章STL算法: f=for_each(b,e,f): 对[b:e)中的每个x执行f(x);返回f 例: void increment_all(vector<int>& v) //递增v中每个元素 { for_each(v ...
分类:
编程语言 时间:
2020-07-12 17:03:38
阅读次数:
52
传送门 给定一个没有重复数字的数列,输入该数列的全排列。 这是一道回溯法(递归思想)的题目,可以通过递归来枚举所有的排列组合,为了避免重复使用某个数字,可以用flag标记每个数字是否使用。 代码方面,回溯法的框架如下,细品: result = [] def backtrack(路径, 选择列表): ...
分类:
其他好文 时间:
2020-07-12 16:57:15
阅读次数:
80
题目描述 给定两个单词(beginWord 和 endWord)和一个字典,找到从 beginWord 到 endWord 的最短转换序列的长度。转换需遵循如下规则: 每次转换只能改变一个字母。 转换过程中的中间单词必须是字典中的单词。 说明: 如果不存在这样的转换序列,返回 0。 所有单词具有相同 ...
分类:
其他好文 时间:
2020-07-12 12:22:49
阅读次数:
41
题目来源:leetcode55 跳跃游戏 题目描述: 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 ...
分类:
其他好文 时间:
2020-07-12 10:21:45
阅读次数:
50