前言
最近写东西有点学魔怔了,满脑子都是后端的东西。有次吃饭的时候,突发奇想,我们的身体中是否也有数据结构存在,又或者是其思想的体现,如果存在具体是什么东西?
人类的记忆
首先我想到的是人类的记忆。首先它肯定不是数组结构,因为数据结构的话的随机查找复杂度是O(1),但是在我们日常生活中,很多时候并不是立刻就能想起某件事。
那么他可能是链表结构嘛?
要说他是链表结构也不是不可能。当我们不记得某件事的时候,经过别人提醒了一下,就立刻能会想起整件事情的原有。相当于别人给了你一个头节点,然后你把整件事都给遍历完了。雀实有这种可能吧?
就算他是链表结构,我觉得也应该是个跳表。我们对于一件事情的回忆,一般都是过一个整体,部分细枝末节的地方,如果不仔细想,就会忽略。因此跳表结构,其实更适合存放我们的记忆。
有没有可能是bitmap?
我觉得应该没太大可能是bitmap,bitmap就以布隆过滤器来说。它里面存在的,未必真实存在;它里面不存在,就一定不存在。这样对我们记忆来说,是一个不可靠的。说到可靠,我又想到了线程安全的问题。
如果我们记忆是用map来存储的,那么是ConcurrentHashMap,还是HashMap?
正常来说,我们人体应该不会存在什么,高并发线程安全的问题,因为一致都是我们一个人格主导着我们自己,是一个单例模型。但是如果一个人是多重人格的话,那么可能就会出现,并发地多重人格抢占资源。最后还可能出现死锁(想到这里我都快要笑死了hhhh)
HashMap是线程不安全的,ConcurrentHashMap是线程安全的,那么看来我们人体应该是HashMap,因为在面对多重人格的时候,还是会出现错误。
随着我们经历的事情越多,那么记忆应该也会越来越多,那么占用资源内存肯定越大,怎么办呢?
那应该像Redis一样,有缓存淘汰机制吧,要么LRU(最近最久淘汰),要么LFU(最近最少淘汰)。我们对我们小时候的记忆,其实有部分是还是记忆的。那么应该是LFU。
身体有可能有缓存? 我们身体有缓存嘛?那有没有数据库?
感觉确实真的有缓存。我们面对期末考试的时候,基本都是临阵磨枪,考前突击几个星期相当于把知识点Key存进缓存中,而且这个存的应该是热点Key进行缓存预热,为了避免考试的时候,遇到不会的出现缓存穿透,而且设置的超时时间还要足够长,也就是要多背几遍,避免出现缓存击穿、缓存雪崩,等考完瞬间忘记,用完就把缓存删了。
但是其实有一些记忆是比较刻骨铭心的,可以说是一辈子都忘不掉,那我觉得这些记忆,应该就是被持久化存进我们身体的数据库里面了。我感觉是挺河里的!
结尾
如果你被文章中的某个部分戳中了,请点点赞👍吧,以后看情况继续更这个系列!哈哈哈哈