- 不写,就无法思考 ---卢曼 我个人认为这是一种检验知识的特有方法,对于知识的理解以自己的方式讲出来,能够整理自己的思路,检验自己的学习成果,并且在表达这个知识的同时,能够真正明白这里我到底懂没懂,如果不能生动的描述自己的知识,那便是逻辑的缺失或者没有真正的理解。 我以前的写作方法就是看完,并且实现,然... 不写,就无法思考 ---卢曼 我个人认为这是一种检验知识的特有方法,对于知识的理解以自己的方式讲出来,能够整理自己的思路,检验自己的学习成果,并且在表达这个知识的同时,能够真正明白这里我到底懂没懂,如果不能生动的描述自己的知识,那便是逻辑的缺失或者没有真正的理解。 我以前的写作方法就是看完,并且实现,然...
- 跳跃表redis的有序集合,使用的是hash字典+跳跃表实现的typedef struct zskiplist { struct zskiplistNode *header, *tail; unsigned long length; int level;} zskiplist;typedef struct zset { dict *dict; zskiplist... 跳跃表redis的有序集合,使用的是hash字典+跳跃表实现的typedef struct zskiplist { struct zskiplistNode *header, *tail; unsigned long length; int level;} zskiplist;typedef struct zset { dict *dict; zskiplist...
- sds在redis中,存储字符串的结构称为 sds (Simple Dynamic String) 简单动态字符串在源码sds.h中定义如下:typedef char *sds;/* Note: sdshdr5 is never used, we just access the flags byte directly. * However is here to document the la... sds在redis中,存储字符串的结构称为 sds (Simple Dynamic String) 简单动态字符串在源码sds.h中定义如下:typedef char *sds;/* Note: sdshdr5 is never used, we just access the flags byte directly. * However is here to document the la...
- 在前2篇中,我们大致了解了语言的gc,以及gc的基本概念详解gc(垃圾回收)机制(一)详解gc(垃圾回收)机制二:认识GC基本概念gc算法大致分为以下几种:1:标记-清除2:引用计数法 3:GC复制 4:GC标记-压缩 5:保守GC6:分代垃圾回收7:增量式垃圾回收8:RC Immix在第一篇文章,有讲到 标记-清除,引用计数,以及go的特色 三色标记法.GC复制算法GC复制简单来说,就是... 在前2篇中,我们大致了解了语言的gc,以及gc的基本概念详解gc(垃圾回收)机制(一)详解gc(垃圾回收)机制二:认识GC基本概念gc算法大致分为以下几种:1:标记-清除2:引用计数法 3:GC复制 4:GC标记-压缩 5:保守GC6:分代垃圾回收7:增量式垃圾回收8:RC Immix在第一篇文章,有讲到 标记-清除,引用计数,以及go的特色 三色标记法.GC复制算法GC复制简单来说,就是...
- 后知后觉,前几天做的自以为挺满意的排行榜,不正是zset的经典实现么,现在的思路全都是查库的操作,由于业务原因,有些是异步操作,难免存在已经计分,但分数还没有入库,这时去查库,导致与实际的分数不一致的情况,通常排行榜本身的操作不是很频繁,但计分的操作很频繁,但也不排除有些业务场景有些"分数怪"刷分的情况,比如王者荣耀实时排列等。 在实现之前先要了解下zset的原理,说原理之前不得不... 后知后觉,前几天做的自以为挺满意的排行榜,不正是zset的经典实现么,现在的思路全都是查库的操作,由于业务原因,有些是异步操作,难免存在已经计分,但分数还没有入库,这时去查库,导致与实际的分数不一致的情况,通常排行榜本身的操作不是很频繁,但计分的操作很频繁,但也不排除有些业务场景有些"分数怪"刷分的情况,比如王者荣耀实时排列等。 在实现之前先要了解下zset的原理,说原理之前不得不...
- LeetCode 78首先数组内的元素是不会重复的,但返回子集不能有重复关于题解,有一个非常巧妙的解法,追加子集,将思路进行画图讲解1.空集合是所有集合的子集2.每次将i追加到已有子数组的集合中3.当指针移动到最后一个元素即遍历完毕代码部分public static List<List<Integer>> subsets(int[] nums) { List<List<Integer>... LeetCode 78首先数组内的元素是不会重复的,但返回子集不能有重复关于题解,有一个非常巧妙的解法,追加子集,将思路进行画图讲解1.空集合是所有集合的子集2.每次将i追加到已有子数组的集合中3.当指针移动到最后一个元素即遍历完毕代码部分public static List<List<Integer>> subsets(int[] nums) { List<List<Integer>...
- LeetCode 94首先我们需要了解什么是二叉树的中序遍历:按照访问左子树——根节点——右子树的方式遍历这棵树,即左中右。但题目中其实是一个不太规则的非常常见的二叉树,如果补齐其中的节点就会舒服很多。这样是不是舒服多了?①在原图的1即为根节点,只不过此节点没有左节点,根据左中右的原则,第一个应该是1判断当前节点是否为null,为null直接返回②然后右节点为2,再判断2是否有左节点③2的左... LeetCode 94首先我们需要了解什么是二叉树的中序遍历:按照访问左子树——根节点——右子树的方式遍历这棵树,即左中右。但题目中其实是一个不太规则的非常常见的二叉树,如果补齐其中的节点就会舒服很多。这样是不是舒服多了?①在原图的1即为根节点,只不过此节点没有左节点,根据左中右的原则,第一个应该是1判断当前节点是否为null,为null直接返回②然后右节点为2,再判断2是否有左节点③2的左...
- 什么是 Redis?Redis是一个开源的key-value存储系统,支持多种数据结构,包括字符串、列表、集合和有序集合等Redis 与其他key - value 缓存产品有以下三个特点?Redis与其他key-value缓存产品相比,具有以下三个特点: a. 高性能:Redis采用单线程模型,能够处理高并发请求,同时也支持异步I/O操作。 b. 可扩展性:Redis支持集群模式,可以水平扩... 什么是 Redis?Redis是一个开源的key-value存储系统,支持多种数据结构,包括字符串、列表、集合和有序集合等Redis 与其他key - value 缓存产品有以下三个特点?Redis与其他key-value缓存产品相比,具有以下三个特点: a. 高性能:Redis采用单线程模型,能够处理高并发请求,同时也支持异步I/O操作。 b. 可扩展性:Redis支持集群模式,可以水平扩...
- 有些资料导入为AI工具集:https://zkkis.github.io/pip install pyparsingfrom django.conf.urls import url由于url已经废弃,改为from django.urls import re_path as urlpip install -i https://pypi.tuna.tsinghua.edu.cn/simple -... 有些资料导入为AI工具集:https://zkkis.github.io/pip install pyparsingfrom django.conf.urls import url由于url已经废弃,改为from django.urls import re_path as urlpip install -i https://pypi.tuna.tsinghua.edu.cn/simple -...
- Dijkstra算法:使用二进制堆而不是优先级队列来优化运行时的复杂性。使用邻接列表而不是邻接矩阵,以避免访问不必要的顶点。Bellman-Ford算法:使用邻接列表来优化运行时的复杂性。如果在迭代过程中没有发生任何更改,请提前退出循环,以避免迭代次数超过必要次数。Floyd-Warshall算法:如果顶点数量较少,请使用邻接矩阵而不是边列表。如果可用的处理器数量大于顶点数量,请使用并行处理... Dijkstra算法:使用二进制堆而不是优先级队列来优化运行时的复杂性。使用邻接列表而不是邻接矩阵,以避免访问不必要的顶点。Bellman-Ford算法:使用邻接列表来优化运行时的复杂性。如果在迭代过程中没有发生任何更改,请提前退出循环,以避免迭代次数超过必要次数。Floyd-Warshall算法:如果顶点数量较少,请使用邻接矩阵而不是边列表。如果可用的处理器数量大于顶点数量,请使用并行处理...
- Python中常用的数据结构有以下几种:列表(List)列表是Python中最常用的数据结构之一,它是一个有序的集合,可以存储任意类型的数据。列表使用方括号([])来表示,每个元素之间用逗号分隔。示例代码:# 创建一个列表my_list = [1, 2, 3, 'hello', 'world']# 访问列表中的元素print(my_list[0]) # 输出:1print(my_list[... Python中常用的数据结构有以下几种:列表(List)列表是Python中最常用的数据结构之一,它是一个有序的集合,可以存储任意类型的数据。列表使用方括号([])来表示,每个元素之间用逗号分隔。示例代码:# 创建一个列表my_list = [1, 2, 3, 'hello', 'world']# 访问列表中的元素print(my_list[0]) # 输出:1print(my_list[...
- 在 Go 语言中,复合数据类型是由基本数据类型组合而成的数据类型。它们可以存储和处理更复杂的数据结构,如数组、切片、映射和结构体。本文将详细介绍 Go 语言中常用的复合数据类型及其特点。 数组(Array)数组是一种固定长度、具有相同类型元素的序列。在 Go 语言中,数组的长度是固定的,定义时需要指定长度,且长度是数组类型的一部分。例如,[5]int 表示长度为 5 的整数数组。func m... 在 Go 语言中,复合数据类型是由基本数据类型组合而成的数据类型。它们可以存储和处理更复杂的数据结构,如数组、切片、映射和结构体。本文将详细介绍 Go 语言中常用的复合数据类型及其特点。 数组(Array)数组是一种固定长度、具有相同类型元素的序列。在 Go 语言中,数组的长度是固定的,定义时需要指定长度,且长度是数组类型的一部分。例如,[5]int 表示长度为 5 的整数数组。func m...
- 在 Go 语言中,数据类型是编程过程中非常重要的概念。了解和正确使用不同的数据类型可以帮助我们更好地处理数据,并编写出高效、可靠的代码。本文将详细介绍 Go 语言的基础数据类型,包括整数类型、浮点数类型、布尔类型、字符串类型等。 整数类型Go 语言提供了多个整数类型,每种类型在内存中占用的空间大小不同,适用于不同范围的整数值。以下是 Go 语言的整数类型:int:根据操作系统的位数选择,32... 在 Go 语言中,数据类型是编程过程中非常重要的概念。了解和正确使用不同的数据类型可以帮助我们更好地处理数据,并编写出高效、可靠的代码。本文将详细介绍 Go 语言的基础数据类型,包括整数类型、浮点数类型、布尔类型、字符串类型等。 整数类型Go 语言提供了多个整数类型,每种类型在内存中占用的空间大小不同,适用于不同范围的整数值。以下是 Go 语言的整数类型:int:根据操作系统的位数选择,32...
- 我是bug菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting! 我是bug菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting!
- 我是bug菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting! 我是bug菌,一名想走👣出大山改变命运的程序猿。接下来的路还很长,都等待着我们去突破、去挑战。来吧,小伙伴们,我们一起加油!未来皆可期,fighting!
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签