每个计算机科学的初学者都曾经想过为什么我们要在图形中找到最短的路径,或者树的用途是什么?我们要使用循环链表来播放约瑟夫斯圈子吗?
因此,本文在参考COVID-19的同时讨论了数据结构和算法在现实世界中的重要性。
目前被称为COVID-19的冠状病毒急性呼吸道疾病暴发已导致重大流行病。冠状病毒成为主要问题的主要原因是因为它的传播可以用树来建模。
据估计,在世界采取封锁措施之前,每个感染者正在感染另外2-4个人。这个数字称为R 0 (R零),它是一种数学符号,表示传染病的传染性。例如,如果某种疾病的R 0为15,那么患有该疾病的人会将其传播给其他15个人。
取决于疾病的R 0值,存在三种传播或减少疾病的可能性:
- 如果R0小于1,则每个现有感染导致少于一个新感染。在这种情况下,疾病最终将消亡。
- 如果R0等于1,则每个现有感染都会导致一个新的感染。该疾病将保持存活和稳定,但不会爆发。
- 如果R0大于1,则每个现有感染都会导致一个以上新感染。该疾病将被传播,并且可能爆发或流行。
重要的是,仅当人群中的每个人都完全容易感染该疾病时,才适用该疾病的R 0值,例如在COVID-19中,没有人接种过疫苗,也没有人曾经患过该疾病,因此无法控制这种疾病的传播。
在我们的模型中-R 0是树中每个节点拥有的平均子级数。这意味着-我们树中的每个节点(平均)有两个到四个孩子。
如果您已经对树木进行了任何深度的研究,您就会知道它会变得非常大,非常快。
全球卫生组织的早期目标是将R 0降低到一个(或更少)。如果R 0 = 1,则树中的每个叶节点现在都成为链接列表的头部。每个人都以相同的方式感染另一个人,即一个(单个)链接列表引用了该列表中的下一个节点。
如果R 0 <1,则某个人在某个时候将不会再感染另一个人,并且(该叶子的)感染线被破坏了。我们可以通过使节点指向空引用来在代码中进行建模,这意味着它是链表中的最终节点。
解决冠状病毒情况的一种方法是更改病毒的行为,以便可以通过(最终是有限的)链接列表而不是树来对它进行建模。树,图形和链接列表不仅在FAANG访谈中使用,而且实际上在建模和解决现实世界中的现象时非常有用。
因此,请保持安全并留在内部,以打破日冕病毒的链条。