首页
文章列表
标签墙
返回找工具啦
数据结构
共 23 篇文章
Python weakref.WeakKeyDictionary在缓存键对象回收时的行为
2026-04-29 16:22:32
Python weakref.WeakKeyDictionary在缓存键对象回收时的行为 1. WeakKeyDictionary基本概念 创建 weakref.WeakKeyDictionary 是Python标准库中提供的一种特殊字典,它使用弱引用来存储键。与普通字典不同,当键对象没有被其他引用
Python
弱引用
缓存
13
0
Python collections.deque与list在队列操作中的性能对比
2026-04-26 18:14:46
Python collections.deque与list在队列操作中的性能对比 在Python中,处理数据序列时,list 是最常用的数据结构。然而,当涉及到队列操作——即先进先出(FIFO)的场景时,内置的 list 往往不是最佳选择。Python 标准库中的 collections.deque
Python
collections.deque
list
22
0
Go语言Map的扩容机制与rehash过程的并发安全性
2026-04-21 06:13:21
Go语言Map的扩容机制与rehash过程的并发安全性 Go语言中的 map 是开发中最常用的数据结构之一,但其内部实现机制涉及复杂的内存管理和并发控制。理解其扩容与迁移过程,对于编写高性能、高并发程序至关重要。 1. 理解 Map 的基础结构 在深入扩容机制之前,必须先了解 Go map 的核心数
Go语言
Map
扩容机制
36
0
Go语言sync.Map的read与dirty双map结构设计
2026-04-20 16:26:17
Go语言sync.Map的read与dirty双map结构设计 在Go语言中,并发安全的数据结构一直是开发者关注的问题。sync.Map作为标准库提供的并发安全map实现,其核心创新在于read与dirty双map结构设计。这种设计巧妙地平衡了读多写少场景下的性能问题。 1. 背景与问题 在Go 1
Go语言
sync.Map
并发安全
32
0
R 数据结构:向量、矩阵、数据框
2026-04-19 06:25:59
R 数据结构:向量、矩阵、数据框 R 语言处理数据的核心在于掌握其基础数据结构。理解并熟练使用向量、矩阵和数据框,是进行复杂数据分析的前提。以下指南将带你直接通过代码掌握这三种结构的创建与操作。 1. 向量 向量是 R 中最基本的数据结构,可以将其理解为一组有序的元素集合。所有向量中的元素必须是相同
R语言
数据结构
向量
35
0
C++ STL 容器:vector、list、map 的使用
2026-04-18 19:24:25
C++ STL 容器:vector、list、map 的使用 C++ 标准模板库(STL)提供了三种最核心的容器:vector(动态数组)、list(双向链表)和 map(映射)。掌握它们的使用是编写高效 C++ 代码的基础。以下指南将直接展示如何在代码中应用它们,涵盖定义、增删改查及适用场景。 1
C++
STL
容器
45
0
Java 集合框架:ArrayList 与 LinkedList 的性能对比
2026-04-15 03:26:53
Java 集合框架:ArrayList 与 LinkedList 的性能对比 在 Java 开发中,ArrayList 和 LinkedList 是 List 接口最常用的两个实现类。尽管它们存储数据的方式相似,但在底层原理和性能表现上却有着天壤之别。选择错误的集合类型可能会导致程序在处理大量数据时
Java
集合框架
性能对比
41
0
Erlang 记录:-record() 定义与使用
2026-04-14 21:24:02
Erlang 记录(Record)本质上是对元组的一种宏封装。它允许程序员通过字段名而不是索引来访问元组中的数据,从而显著提升代码的可读性和维护性。以下指南将详细介绍如何定义、实例化、操作以及在模块间共享记录。 定义记录 记录的定义通常位于 Erlang 源代码文件的头部,或者专门的头文件(.hrl
Erlang
记录
Record
46
0
VBA 集合操作:Collection 与 Dictionary
2026-04-14 15:22:52
VBA 集合操作:Collection 与 Dictionary 在VBA编程中,集合(Collection)和字典(Dictionary)都是用于存储和管理数据的容器。它们各有特点,适用于不同的应用场景。 Collection 对象 创建Collection对象: vba Dim myCollec
VBA编程
集合操作
数据结构
49
0
Haskell 类型系统:type 与 data 声明
2026-04-11 17:23:18
Haskell 类型系统:type 与 data 声明 Haskell 的类型系统以其严谨和强大著称。在编写代码时,区分 type 和 data 是构建清晰、安全程序的第一步。前者用于为现有类型起别名,后者用于创造全新的数据结构。掌握这两者的使用场景与区别,能让你在代码重构与类型安全之间找到完美的平
Haskell
类型系统
type
57
0
Python 类型提示:typing 模块与类型标注
2026-04-10 15:26:04
Python 类型提示:typing 模块与类型提示 Python 3.5 引入了类型提示功能,允许开发者在代码中指定变量、函数参数和返回值的类型。这一特性已成为Python编程的重要组成部分,帮助开发者编写更清晰、更健壮的代码。 类型提示基础 理解 类型提示是Python的一种静态类型系统机制,它
Python类型提示
typing模块
类型标注
54
0
C++ STL 容器:vector、map、set 的基本操作
2026-04-07 06:32:36
1. 引入标准库头文件 include <vector 与 include <iostream,启用动态数组与基础输入输出功能。 2. 声明容器实例 vector<int data;,创建一个初始为空的整数序列(底层为连续内存块,长度随元素增加自动翻倍扩容)。 3. 尾部追加调用 data.push
C++编程
STL容器
动态数组
51
0
Clojure 数据结构:vector、map、set
2026-04-06 22:18:00
Clojure 数据结构:vector、map、set 阶段一:掌握 Vector(向量)的基础操作 1. 创建 向量实例。使用方括号包裹目标元素,元素间以空格分隔。在代码编辑器中编写 1 "a" :b 即可 构建 包含整型、字符串和关键字的混合向量。 2. 读取 指定索引的值。向量本身可作为函数调
Clojure
数据结构
向量操作
54
0
Go 切片:切片操作与扩容机制
2026-04-06 12:43:34
Go 切片:切片操作与扩容机制 切片是 Go 语言中最核心的数据结构之一,它是对底层数组的抽象层,提供了动态扩容和灵活的视图功能。理解切片的内部实现与操作机制,是编写高性能 Go 代码的关键。 切片的内部结构 切片并不直接存储数据,而是描述底层数组的一个片段。每个切片对象在底层包含三个核心字段: 1
Go语言
切片
扩容机制
40
0
Java 常用集合:ArrayList 与 HashMap 的使用
2026-04-05 13:06:55
Java 常用集合:ArrayList 与 HashMap 的使用 在 Java 开发中,集合是存储和操作数据的基础工具。ArrayList 和 HashMap 是最常用的两种集合类型,几乎出现在每一个 Java 项目中。理解它们的特性和适用场景,能够帮助你写出更高效、更易维护的代码。 一、Arra
Java集合
ArrayList
HashMap
80
0
Lisp 数据结构:list、cons、car、cdr
2026-04-04 09:57:05
Lisp 数据结构:list、cons、car、cdr 在 Lisp 语言中,最基本也最重要的数据结构是“链表”(list)。它不是像数组那样连续存储的块,而是由一个个小单元“拼接”而成。这些小单元叫 cons,每个 cons 能装两个东西。通过把多个 cons 连起来,就形成了我们熟悉的列表。 理
Lisp
数据结构
链表
48
0
Perl 哈希操作:%hash 与 keys()
2026-04-03 13:01:09
Perl 哈希操作:%hash 与 keys 在 Perl 中,哈希(Hash)是一种以“键值”对形式存储数据的结构。%hash 表示一个完整的哈希变量,而 keys 是一个内置函数,用于提取哈希中所有的键。掌握这两者的配合使用,能让你高效地遍历、检查或处理哈希数据。 理解 %hash 的基本用法
Perl
哈希
keys函数
39
0
Go语言中切片扩容机制的底层原理分析
2026-04-03 07:48:25
Go语言中切片扩容机制的底层原理分析 Go语言中的切片(slice)是对数组的封装,提供了动态、灵活的序列操作能力。但很多人不清楚:当你向一个容量不足的切片追加元素时,Go是如何自动“扩容”的?理解这一机制,不仅能写出更高效的代码,还能避免不必要的内存浪费和性能陷阱。 切片的基本结构 在深入扩容逻辑
Go语言
切片扩容
内存管理
43
0
Dart 集合操作:List、Set、Map 的使用
2026-04-02 19:33:26
Dart 集合操作:List、Set、Map 的使用 Dart 提供了三种核心集合类型:List(有序列表)、Set(无重复元素集合)和 Map(键值对映射)。掌握它们的创建、读取、修改和查询方法,是高效编写 Dart 程序的基础。 List:有序可重复的序列 创建 List dart // 创建空
Dart
List
Set
36
0
Scheme 数据结构:list、vector、hash-table
2026-04-02 17:44:33
Scheme 数据结构:list、vector、hashtable Scheme 提供三种核心内置数据结构:list(列表)、vector(向量)和 hashtable(哈希表)。它们在内存布局、访问速度和使用场景上有显著区别。掌握它们的创建、读取、修改和查询方法,是高效编写 Scheme 程序的基
Scheme
数据结构
list
45
0
1
2
下一页