03__动态容器:如何生动地记录对话?

你好,我是高伟。欢迎你继续跟我学习视觉笔记。

我们在前面已经学习了点、线、面的内容,也学习了人物的一些画法和用法,现在开始,我们要通过工作中的场景来学习视觉化笔记中常见容器的画法。容器与场景息息相关,所以,它可以快速地被运用到视觉笔记中。

03__梵高的画到底好在哪里?

你好!我是罗桂霞。

假设我们今天有一场投票活动,主题是“我认识的艺术家”,除了达芬奇、米开朗基罗和毕加索之外,你觉得谁的票数会是最多的呢?我想,你应该猜到了,就是梵高

03__分布式互斥:有你没我,有我没你

你好!我是聂鹏程。今天,我来继续带你打卡分布式核心技术。

通过前面的两篇文章,相信你已经对此次的分布式世界之行有了一个初步了解,想必对此次旅行也是充满期待。今天,我就带你正式踏上第一站:分布式协调与同步。在这一站,我将带你学习如何让分布在不同计算机上的程序具有“团队精神”,换句话说就是如何让程序通过协作共同去达成一个业务目标。

03__分组与引用:如何用正则实现更复杂的查找和替换操作?

你好,我是伟忠。今天我打算和你聊聊分组与引用。那什么场合下会用到分组呢?

假设我们现在要去查找 15 位或 18 位数字。根据前面学习的知识,使用量词可以表示出现次数,使用管道符号可以表示多个选择,你应该很快就能写出\d{15}|\d{18}。但经过测试,你会发现,这个正则并不能很好地完成任务,因为 18 位数字也会匹配上前 15 位,具体如下图所示。

03__复杂度分析(上):如何分析、统计算法的执行效率和资源消耗?

我们都知道,数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间。所以,执行效率是算法一个非常重要的考量指标。那如何来衡量你编写的算法代码的执行效率呢?这里就要用到我们今天要讲的内容:时间、空间复杂度分析。

03__复杂而又重要的购物车系统,应该如何设计?

你好,我是李玥。

今天这节课我们来说一下购物车系统的存储该如何设计。

首先,我们来看购物车系统的主要功能是什么。就是在用户选购商品时,下单之前,暂存用户想要购买的商品。购物车对数据可靠性要求不高,性能也没有特别的要求,在整个电商系统中,看起来是相对比较容易设计和实现的一个子系统。

03__高性能IO模型:为什么单线程Redis能那么快?

你好,我是蒋德钧。

今天,我们来探讨一个很多人都很关心的问题:“为什么单线程的 Redis 能那么快?”

首先,我要和你厘清一个事实,我们通常说,Redis 是单线程,主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的,这也是 Redis 对外提供键值存储服务的主要流程。但 Redis 的其他功能,比如持久化、异步删除、集群数据同步等,其实是由额外的线程执行的。

03__光圈与景深:拍照片可以不对焦?

你好,我是小麥。

今天这节课我会带你了解相机操作的第一个基本概念——光圈,让你知道光圈是什么,它是怎么影响我们的拍摄结果的,我们又该怎么掌握它,并由此展开到对“景深”这一概念的探讨。在学习完这节课以后,你会彻底搞清楚那些摄影师是怎么仅靠调节光圈就让眼前明亮、刺眼的画面变成柔和、昏暗的成片的,还有那些背景虚化的照片是怎么拍出来的。

03__哈希检索:如何根据用户ID快速查询用户信息?

你好,我是陈东。

在实际应用中,我们经常会面临需要根据键(Key)来查询数据的问题。比如说,给你一个用户 ID,要求你查出该用户的具体信息。这样的需求我们应该如何实现呢?你可能会想到,使用有序数组和二叉检索树都可以来实现。具体来说,我们可以将用户 ID 和用户信息作为一个整体的元素,然后以用户 ID 作为 Key 来排序,存入有序数组或者二叉检索树中,这样我们就能通过二分查找算法快速查询到用户信息了。