李东蔚
李东蔚
全部文章
题解
归档
标签
去牛客网
登录
/
注册
李东蔚的博客
全部文章
/ 题解
(共24篇)
题解 | #连续子数组的最大和#
方法一:正数扩大效应因为正数具有扩大效应,所以要找连续子数组的最大和,我们就要从第二个数开始遍历数组总结:从第二个数开始,如果前一个数是正数,就把这个数和自己相加,如果不是就不加,最后遍历一遍找最大值。这样加了以后会有两种结果:要么还是正数,当然可能变大可能变小(特殊情况等会儿会讲)要么是负数,说明...
2021-08-25
1
389
题解 | #包含min函数的栈#
这个题的思路就是“空间换时间”建立一个新的栈关键在于push操作这两个栈都要push的,原则是保证min栈的栈顶元素始终是最小值因此需要分情况,如果node比min的栈顶元素小,那就直接压进去,要大一点儿,就把min()返回的值压进去无论如何,普通栈都是直接push的min()方法就是peek最小栈...
2021-08-22
1
317
题解 | #跳台阶#
斐波那契数列结合递归。这个题是很典型的斐波那契数列了,可以先列举一下,只有一级台阶是1种、之后2种、3种、5种...斐波那契是0、1、1、2、3、5....明显看出是符合的,那么套用公式F(N)=F(N-1)+F(N-2)(N>=2)递归头就是只有1级和2级的状态,其他时候按通项公式递推。
2021-08-15
1
386
题解 | #用两个栈实现队列#
这里通过画图很容易发现,其实就是把第一个栈的元素先压进第二个栈,然后再弹栈,实现先入先出。push部分很简单,就是直接push到第一个栈里面就行了,无需复杂的操作。pop部分呢,显然要pop是从第二个栈pop的,那么第二个栈就有为空和不为空两种情况。如果为空:显然需要将第一个栈的所有元素全部压栈到第...
2021-08-10
0
369
首页
上一页
1
2
3
下一页
末页