15 定位问题才能更好地解决问题:开发前的复杂度分析与技术选型 15 定位问题才能更好地解决问题:开发前的复杂度分析与技术选型在前面课时中,我们学习了数据结构和算法思维,这些知识和技巧,是解决问题、代码优化的基础。从本课时开始,我们将进入实战模块,从真正解决问题的角度来看看,如何将我们此前学到的知识灵活运用到实际工作中。 问题定位和技术选型假设你现在面对一个实际的算法问题,则需要从以下两个方面进行思考。 首先,我们要明确目标 。即用尽可能 2022-08-23 专栏 > 重学数据结构与算法-完
16 真题案例(一):算法思维训练 16 真题案例(一):算法思维训练你好,欢迎进入第 16 课时的学习。在前面课时中,我们已经学习了解决代码问题的方法论。宏观上,它可以分为以下 4 个步骤: 复杂度分析 。估算问题中复杂度的上限和下限。 定位问题 。根据问题类型,确定采用何种算法思维。 数据操作分析 。根据增、删、查和数据顺序关系去选择合适的数据结构,利用空间换取时间。 编码实现 。 这套方法论的框架,是 2022-08-23 专栏 > 重学数据结构与算法-完
17 真题案例(二):数据结构训练 17 真题案例(二):数据结构训练在前面课时中,我们已经学习了解决代码问题的方法论。宏观上,它可以分为以下 4 个步骤: 复杂度分析 。估算问题中复杂度的上限和下限。 定位问题 。根据问题类型,确定采用何种算法思维。 数据操作分析 。根据增、删、查和数据顺序关系去选择合适的数据结构,利用空间换取时间。 编码实现 。 这套方法论的框架,是解决绝大多数代码问题的基本步骤。其中 2022-08-23 专栏 > 重学数据结构与算法-完
19 真题案例(四):大厂真题实战演练 19 真题案例(四):大厂真题实战演练这个课时,我们找一些大厂的真题进行分析和演练。在看真题前,我们依然是再重复一遍通用的解题方法论,它可以分为以下 4 个步骤: 复杂度分析 。估算问题中复杂度的上限和下限。 定位问题 。根据问题类型,确定采用何种算法思维。 数据操作分析 。根据增、删、查和数据顺序关系去选择合适的数据结构,利用空间换取时间。 编码实现 。 大厂真题实战演 2022-08-23 专栏 > 重学数据结构与算法-完
21 面试中如何建立全局观,快速完成优质的手写代码? 21 面试中如何建立全局观,快速完成优质的手写代码?在前面课时中,我们介绍了技术面试的流程。本课时我们将重点剖析面试流程中的手写代码环节,帮助你换一种思路迎接面试。 手写代码的能力考核首先,我们要明确一点,手写代码要比在 IDE 里写代码难得多。在很多 IDE 中,敲一个 Str 出来,就会自动补全 ing,得到String。反括号”}”,也会自动与前面的括号呼应。即使代码敲 2022-08-23 专栏 > 重学数据结构与算法-完
18 真题案例(三):力扣真题训练 18 真题案例(三):力扣真题训练在备战公司面试的时候,相信你一定也刷过力扣(leetcode)的题目吧。力扣的题目种类多样,而且有虚拟社区功能,因此很多同学都喜欢在上面分享习题答案。 毫无疑问,如果你完整地刷过力扣题库,在一定程度上能够提高你面试通过的可能性。因此,在本课时,我选择了不同类型、不同层次的力扣真题,我会通过这些题目进一步讲述和分析解决数据结构问题的方法。 力 2022-08-23 专栏 > 重学数据结构与算法-完
20 代码之外,技术面试中你应该具备哪些软素质? 20 代码之外,技术面试中你应该具备哪些软素质?前面课时中,我们完成了这个专栏覆盖的专业知识(也就是硬素质)的学习。最后两个课时,是这个专栏的特别放送。我们会聚焦在面试的场景,看一下在面试过程中如何运用所学知识,并结合一定的软素质技巧,来拿到心仪的offer。本课时,我们将围绕面试应该具备的软素质能力展开分析。 技术面试的流程从本质来看,技术面试就是一次交流和讨论。你作为候选 2022-08-23 专栏 > 重学数据结构与算法-完
加餐 课后练习题详解 加餐 课后练习题详解专栏虽已结束,但学习不应停止。我看到很多同学依然还在这里学习,一部分同学积极地在留言区和大家分享学习总结和练习题答案。 我几乎在每个课时的结尾都留下了一道练习题,目的是帮助你检测和巩固本课时的重点内容,抑或是引出后续课时中的内容。在我处理留言的过程中,发现很多同学想要练习题详细解答过程以及答案,所以就有了今天的这一篇加餐内容,希望对你有所帮助。 接下来我会 2022-08-23 专栏 > 重学数据结构与算法-完
01 冯·诺依曼体系结构:计算机组成的金字塔 01 冯·诺依曼体系结构:计算机组成的金字塔学习计算机组成原理,到底是在学些什么呢?这个事儿,一两句话还真说不清楚。不过没关系,我们先从“装电脑”这个看起来没有什么技术含量的事情说起,来弄清楚计算机到底是由什么组成的。 不知道你有没有自己搞过“装机”这回事儿。在 2019年的今天,大部分人用的计算机,应该都已经是组装好的“品牌机”。如果我们把时钟拨回到上世纪八九十年代,不少早期的电脑爱好者, 2022-08-23 专栏 > 深入浅出计算机组成原理
00 开篇词 为什么你需要学习计算机组成原理? 00 开篇词 为什么你需要学习计算机组成原理?你好,我是徐文浩,一个正在创业的工程师。目前主要是通过自然语言处理技术,为走向海外的中国企业提供英语的智能客服和社交网络营销服务。 2005 年从上海交通大学计算机系毕业之后,我一直以写代码为生。如果从 7 岁第一次在少年宫写程序开始算起,到今天,我的码龄快有 30 岁了。这些年里,我在Trilogy Software 写过各种大型企业软件;在 2022-08-23 专栏 > 深入浅出计算机组成原理