数据结构与算法
nano-
啥也不是
展开
-
数据结构与算法之查找-经典题目解析
目录35. 搜索插入位置202. 快乐数205. 同构字符串242. 有效的字母异位词290. 单词规律349. 两个数组的交集350. 两个数组的交集 II410. 分割数组的最大值451. 根据字符出现频率排序540. 有序数组中的单一元素35. 搜索插入位置难度 简单题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。思路:首先排序数组,原创 2020-08-25 14:43:26 · 1208 阅读 · 0 评论 -
动态规划的思想与经典题目
动态规划简介动态规划的经典题目5. 最长回文子串难度 中等题目:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。思路:前提:对于一个子串而言,如果它是回文串,并且长度大于2,那么将它首尾的两个字母去除之后,它仍然是个回文串。 状态:dp[i][j] 表示子串 s[i..j] 是否为回文子串。 状态转移方程:dp[i][j] = (s[i] == s[j]) and dp[i+1][j-1] 边界条件:(j - 1) - (i + 1) ...原创 2020-08-21 13:25:58 · 540 阅读 · 0 评论 -
分治法的思想与经典题目
目录分治法简介分治法主定理分治算法的时间复杂度分治法的基本步骤分治法的使用条件分治法的经典题目50. Pow(x, n)53. 最大子序和169. 多数元素分治法简介分治法,即“分而治之”,就是将原问题分解为几个规模较小但是类似于原问题的子问题,递归求解这些子问题, 然后再合并这些问题的解来建立原问题的解。分治法主定理分治法通常遵守一种通用模式:在解决规模为n的问题时,总是先递归地求解a个规模为n/b的子问题,然后在时间内将子问题的解合并起来。分治算法的.原创 2020-08-18 20:35:57 · 1088 阅读 · 0 评论