写点什么

ARTS 挑战打卡第五周(200608-200614)

发布于: 2020 年 08 月 24 日
ARTS挑战打卡第五周(200608-200614)

Algorthm

https://leetcode.com/problems/binary-search-tree-iterator/

思路:树的遍历,还是用树的遍历框架,遍历结点和左右子树。


https://leetcode.com/problems/kth-largest-element-in-an-array/

思路:快速选择算法,参考快排算法


Review

文章链接:https://muratbuffalo.blogspot.com/2020/06/learning-about-distributed-systems.html

很赞的一篇文章,相当于指明了一幅寻宝图的起点,介绍如何开始学习分布式系统,记录几点摘要:

入门分布式系统至少要三个月,之后需要很长时间去加深这部分的能力


不鼓励通过看某些概念或算法的实现代码来学习分布式系统,因为代码都是大同小异,结构都很类似,通过代码会让自己进入了一个熟悉的领域,带着原来的思路去学习,应该把分布式系统当作一个全新的领域来学习。


先读完这本《Introduction to Distributed Systems》,里面介绍了分布式系统领域的概念和相关主题


使用 TLA+(一种正式的规范语言。它用于设计,建模,记录和验证程序,尤其是并发系统和分布式系统。)来练习算法


学习分布式系统中的 impossibility results,即证明某项事情的不可能的,分布式系统中两个最重要的 impossibility results,网络协同攻击和 FLP。


文章又推荐了一次马丁大神的《数据密集型系统设计》,这本书我读过一遍,简直是大开眼界,值得再次拜读。还有其他的学习链接都在文章里面有,这里不一一列举了。


Tip

进程和线程的区别

从学术上理解,进程就是包含上下文切换的程序执行时间总和 = CPU 加载上下文+CPU 执行+CPU 保存上下文,线程就是 CPU 执行那一部分的一个个小段。


进程和线程都是一个时间段的描述,是 CPU 工作时间段的描述,不过是颗粒大小不同。


另一种简单的理解:

1. 进程:程序的一次执行

2. 线程:CPU 的基本调度单位


Share

blog-使用拦截器统一处理异常


参考链接:

线程和进程的区别是什么?

https://www.zhihu.com/question/25532384


原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

如果本文对你有帮助,请点个赞吧,谢谢



发布于: 2020 年 08 月 24 日阅读数: 49
用户头像

公众号【老胡爱分享】 2018.03.13 加入

一个热爱分享,热爱分享的普通人。 追求终身成长,希望用文字的力量服务大众。

评论

发布
暂无评论
ARTS挑战打卡第五周(200608-200614)