New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2021-06-01 #8
Comments
English Review原文链接: https://hacks.mozilla.org/2021/06/looking-fine-with-firefox-89/ Firefox 89 看起来非常不错在减少了活动的一年后我们(Firefox)在这里感觉到有一点点跟不上时代,但是Firefox 89 变得更好看了,同时它拥有了更轻量、更精简的界面。 frumpy adj. 过时的,无魅力的,邋遢的 |
TipPlain ObjectPlain Object 翻译过来应该叫纯粹对象、普通对象。准确来说 JavaScript 并没有这个概念,我很怀疑这个概念是从隔壁 java 的 POJO 联想而来的,所以这里并没有官方定义什么是纯粹的。 {x:1} // is plain object
{x: new Date()} // is plain object
Object.create(null) // is plain object
Object.create({x:1}) // not plain object
[1,2,3] // not plain object
new Date // not plain object 看到这个比较相信对这个所谓 Plain Object 有了概念,它就是要一个纯粹的对象来操作,不需要你去其他地方继承对象,显然可以通过原型链去判断它是不是继承自其他对象。 export default function isPlainObject(obj: any): boolean {
if (typeof obj !== 'object' || obj === null) return false
let proto = obj
while (Object.getPrototypeOf(proto) !== null) {
proto = Object.getPrototypeOf(proto)
}
return Object.getPrototypeOf(obj) === proto}
} 在 redux 这里,它把 总体来说,我也不是特别清楚这个概念的作用在哪,了解它主要是当时去了解 Lodash 源码和 redux 源码的时候,突然对这个概念很好奇,在某些特殊场景下比如需要提供一个全局对象上可能是有用的。而我期待的 Plain Object,更有点类似java里面的POJO,在JavaScript里面就是可以被JSON转换的对象,除了原型链上的方法,不应该丢掉属性的对象,这样纯粹的对象可以非常方便转换为其他的数据结构,当然这样的对象检查起来就非常需要性能支持了但是typescript就可以非常好的做这个检查。 |
Share工具分享
生活分享
|
Algorithm
股票的买卖问题
121.Best Time to Buy and Sell Stock
这个题目是给你当股神的机会🐶。只能购买一次,只能按顺序往后买,而且你只有一次购买的机会,需要你选出最大的那个收益。
乍看之下需要不断的组合元素来达到最大的差值,稍微细想就会发现,每次肯定是最小的和最大的差值,而且只能是后面的减去的前面的(收益),所以我需要在前部分确定最小值,再慢慢寻找最大值就可以得到最大的收益,这个题目相信是真正的简单的:
这题目稍加思考就可以得出答案,是简单题目的典型题目,果然我还是适合简单的题目。
122. Best Time to Buy and Sell Stock II
紧接着就是上一道题目的变体,感觉难度有点增加了。重新思考🤔,因为这是给你多次机会去购买,和一次机会的思维是不一样,多次买入卖出,按照我对市场的理解,我希望涨了就是我买的,跌了永远都不是我的,我买到的永远是涨的。这里注意的是把涨的部分都攒起来,那就是所有涨过的部分,也就是最大收益,突然想到这点后,我立刻就完成了代码。
其实这道题目也很简单,特别经历过去年的股市的人都懂。但是如果一开始做题目的是121而不是122的话,那么思维很可能就会被影响, 多次购买追求的总的收益最大化和单次收益最大化是完全不一样的,全局的思考起来这个题目就很容易懂了。当然题解还给你贴心的画上股市折线图(这真的好吗,看图更让人脱离题目了好吧。
最后
股票问题还是蛮贴近生活的,毕竟金融是需要算法和数学的地方,羡慕学神大佬的数学和编程。股票问题好像是难度比较极端,还有两道难题 123 和 188 我就没敢去看了,算法我确实不懂了,看来还是得多加练习,先把容易的学会。
The text was updated successfully, but these errors were encountered: