
力扣刷题
文章平均质量分 78
在找bug的路上
在找bug的路上游走
展开
-
【力扣刷题】单调栈总结
单调栈理论1.定义从栈底元素到栈顶元素呈单调递增或单调递减,栈内序列满足单调性的栈2.性质(1)当新元素在单调性上优于栈顶时(单增栈新元素比栈顶大,单减栈新元素比栈顶小),压栈,栈深+1;(2)当新元素在单调性与栈顶相同(新元素于栈顶相同)或劣于栈顶时(单增栈新元素比栈顶小,单减栈新元素比栈顶大),弹栈,栈深-1;3.适用场景在一个数组arr[N]中,给定一个数num,分别求解各arr[i]左边比num大的距离其最近的和右边比num大的距离其最近的数,使得其时间复杂度为O(N)(优于暴力解法的原创 2021-03-06 14:51:06 · 527 阅读 · 1 评论 -
【力扣刷题】72. 编辑距离
题目:给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符示例 1:输入:word1 = "horse", word2 = "ros"输出:3解释:horse -> rorse (将 'h' 替换为 'r')rorse -> rose (删除 'r')rose -> ros (删除 'e')示例 2:输入:word1 = "inten原创 2021-02-28 16:11:10 · 199 阅读 · 0 评论 -
【力扣刷题】剑指 Offer 27. 二叉树的镜像
题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入: 4 / \ 2 7 / \ / \1 3 6 9镜像输出: 4 / \ 7 2 / \ / \9 6 3 1示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]来源:力扣(LeetCode)链接:https://leetcode-cn.co原创 2020-10-28 10:50:45 · 172 阅读 · 0 评论 -
【力扣刷题】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
1.题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。提示:1 <= nums.length <= 500001 <= nums[i] <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/diao-zheng-shu-原创 2020-10-11 15:46:19 · 290 阅读 · 1 评论 -
【力扣刷题】剑指 Offer 09. 用两个栈实现队列
1.题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]输出:[null,null,3,-1]示例 2:输入:["CQueue","deleteHead","appendTa原创 2020-09-19 12:30:18 · 167 阅读 · 0 评论 -
【力扣刷题】3-连通网络的操作次数(并查集)
题目用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1。线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b。网络中的任何一台计算机都可以通过网络直接或者间接访问同一个网络中其他任意一台计算机。给你这个计算机网络的初始布线 connections,你可以拔开任意两台直连计算机之间的线缆,并用它连接一对未直连的计算机。请你计算并返回使所有计算机都连通所需的最少操作次数。如果不可能,则返回 -1 。 示例输入:原创 2020-05-31 22:41:14 · 318 阅读 · 0 评论 -
【力扣刷题】2-剪绳子II(动态规划)
题目给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。请问 k[0]*k[1]*...*k[m] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。示例输入: 10输出: 36解释: 10 = 3 + 3 +原创 2020-05-30 14:56:57 · 580 阅读 · 0 评论 -
【力扣刷题】1-硬币(动态规划)
分段函数东方红煽风点火第三个第三方原创 2020-05-30 09:15:48 · 558 阅读 · 0 评论