
解题思路
TreeCode
我喜欢种树
展开
-
双指针练习---力扣第75题
题目:颜色分类 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列,此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意: 不能使用代码库中的排序函数来解决这道题。 示例1: 输入: [2,0,2,1,1,0] 输出: [0,0,1,1,2,2] 示例2: 输入:[2,0] 输出:[0,2] 思路: 这个题用排序当然是可以写出来的,这里不做讨论,本篇分享将使用双指针通过一次遍历来解决这个问题。 双指针: 这个题原创 2020-10-07 16:26:12 · 142 阅读 · 0 评论 -
四数之和(力扣第18题原题)
问题: 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c , d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 示例: 给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。 满足要求的四元组集合为: [ [-1, 0, 0, 1], [-2, -1, 1, 2], [-2, 0, 0, 2] ] 思路: 排序加指针 先排除不可能的情况: 情况一原创 2020-10-05 16:27:32 · 204 阅读 · 0 评论 -
力扣11. 盛最多水的容器
题目描述: 给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且 n 的值至少为 2。 示例: 输入:[1,8,6,2,5,4,8,3,7] 输出:49 题解: 思路:首先确定这个容器的容量(实际是面积)大小公式,设x为横坐标,y为纵坐标, x2>x1,则 T = ( x2-x1 )原创 2020-08-25 08:44:41 · 167 阅读 · 0 评论 -
力扣热搜一百题之19.删除链表的倒数第n个节点
题目描述: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明: 给定的 n 保证是有效的。 解题思路: 1.找到倒数第n+1个节点; 2.把这个节点的next节点指向next.next。 先看数组:如果该题的数据结构不是链表而是数组的话,寻找倒数第n+1个节点时是不是就非常简单?,直接利用数据的长度和传进来的n,原创 2020-08-27 08:07:58 · 132 阅读 · 0 评论 -
力扣---5.最长回文子串
题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例1: 输入: “babad” 输出: “bab” 注意: “aba” 也是一个有效答案。 示例2: 输入: “cbbd” 输出: “bb” 解题思路: 首先观察回文数的特征,每一个回文字符串(长度大于)去掉头尾之后都是一个新的回文串,所以判断一个字符串是回文串,可以通过判定其去掉头尾部分是一个回文串,且头尾相同。由此,可以整理出动态规划的解决方案。设 dp[ i ][ j ] 为原字符串s从 索引i 到原创 2020-08-21 12:08:41 · 157 阅读 · 0 评论 -
力扣---3. 无重复字符的最长子串
难度:中 问题描述 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。 解题思路: 这类取子串问题,一般采用滑动窗口解决。滑动窗口应用在这道题上的解题思路:首先定义一个右节点,和一个左节点,但是左节点刚好可以被循环的i代替,左节点指向字符串0号下标,然后一直向右取不原创 2020-08-21 00:10:33 · 158 阅读 · 0 评论 -
蓝桥杯基础试题---字母图形
蓝桥杯基础试题—字母图形题解 问题描述 问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。 输入格式 输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。 输出格式 输出n行,每个m个字符,为你的图形。 样例输入 5 7 样例输出 ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 数据规模与约定 1原创 2020-08-11 01:39:56 · 321 阅读 · 0 评论 -
回文数判定中的收获
回文数判定 问题描述 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 说明 这篇文章仅仅记录自己的收获,在刷题路上遇到的新思路总是能给你惊喜。世界这么大,多看看眼界会开阔很多,学习也一样,多看看他人的解题思路,自己的眼界也会开阔很多。就像这次的回文数判定,原来拿到题目就是解完就算了,也不管时间复杂度,反正通过就完事了。前天第一次在leetcode上提交了自己的第一个粗糙的答案,顺手看了看了他人题解后,果然世界美好无比,我瞬间就爱上了这个网站,但我相信我们原创 2020-06-12 00:56:22 · 272 阅读 · 0 评论