DSA
Open钢蛋
这个作者很懒,什么都没留下…
展开
-
【Leetcode】回文串
经典题目5. 最长回文子串(多种解法)131. 分割回文串(dfs)132. 分割回文串 II(动态规划)214. 最短回文串(KMP) 5. 最长回文子串(多种解法) leetcode 5 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 思路: 反转字符串得到s’,求s和s’的最长公共子串,并判断该子串是否对应s和s’的同一位置。时间复杂度O(n2)O...原创 2020-04-14 16:20:28 · 221 阅读 · 0 评论 -
【Leetcode】旋转数组/链表/字符串
经典题目189. 旋转数组(三次反转)61. 旋转链表(闭环断环)33. 搜索旋转排序数组(二分法) 189. 旋转数组(三次反转) leetcode 189 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 思路: 题述操作相当于先将整个数组做一次反转,然后分别对前k个元素和后n-k个元素做反转。 注意: 当k % n == 0时,数组各位置不会发生变化,因此反转前令k =...原创 2020-04-11 14:47:40 · 144 阅读 · 1 评论 -
【Leetcode】有效括号
经典题目有效的括号(栈)括号生成(dfs)最长有效括号(动态规划) 有效的括号(栈) leetcode 20 给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 class Solution { public: bool ...原创 2020-04-10 11:42:13 · 148 阅读 · 0 评论 -
【Leetcode】dfs深度优先搜索
经典题目全排列全排列II解数独N皇后 全排列 leetcode 46 class Solution { public: vector<vector<int>> ans; // 判断当前数字是否被使用过(基于原始数列没有重复元素) bool isValid(vector<int>& res, int num) { ...原创 2020-04-10 09:50:52 · 112 阅读 · 0 评论