2、数据结构原理:Hash表的时间复杂度为什么是O(1)?

大概十年前,我在阿里巴巴工作的时候,曾经和另一个面试官一起进行一场技术面试,面试过程中我问了一个问题:Hash表的时间复杂度为什么是O(1)?候选人没有回答上来。面试结束后我和另一个面试官有了分歧,我觉得这个问题没有回答上来是不可接受的。而他则觉得,...

后端技术面试 38 讲

1、程序运行原理:程序是如何运行又是如何崩溃的?

软件的核心载体是程序代码,软件开发的主要工作产出也是代码,但是代码被存储在磁盘上本身没有任何价值,软件要想实现价值,代码就必须运行起来。那么代码是如何运行的?在运行中可能会出现什么问题呢? 程序是如何运行起来的软件被开发出来,是文本格式的代码,这些代...

后端技术面试 38 讲

0、开篇词:掌握软件开发技术的第一性原理

计算机软件开发是一个日新月异的领域,几乎每天都有新的技术诞生。每隔几年,软件开发领域就会进行一次大的技术潮流变换,所以身处其中的软件开发技术人员也常常疲于奔命,不断学习各种新知识、新技术,生怕被这个快速变革的时代所抛弃。 但是每次从头开始学习一个新的...

后端技术面试 38 讲

23、结束语:真正的高贵,不是优于别人,而是优于过去的自己

你好,我是袁武林。 不知不觉中,在大家的耐心陪伴下,即时消息专栏的更新马上就要结束了。 首先,要感谢各位同学对我的信任和宽容,给我这个机会,让我能够在这段短暂的时间里,带领大家一起来学习即时消息这一门古老但又充满活力的技术。 对我来说,这是一段非常特...

即时消息技术剖析与实战

22、答疑解惑:不同即时消息场景下架构实现上的异同

你好,我是袁武林。 随着专栏最后一个进阶篇模块的更新后,咱们的即时消息专栏课程,到这里就要告一段落了。首先,感谢你在这段时间里对专栏的持续关注,也非常高兴看到你一直在积极地思考和学习。 在专栏的讨论区,同学们也都十分活跃,都在热情地留言和互动讨论,留...

即时消息技术剖析与实战

21、期末实战:为你的简约版IM系统,加上功能

你好,我是袁武林。 在期中实战中,我们一起尝试实现了一个简易版的聊天系统,并且为这个聊天系统增加了一些基本功能。比如,用户登录、简单的文本消息收发、消息存储设计、未读数提示、消息自动更新等。 但是期中实战的目的,主要是让你对IM系统的基本功能构成有一...

即时消息技术剖析与实战