数据结构
文章平均质量分 67
许野平
非常喜欢软件设计这份工作,有不错的数学基础,喜欢读书、摄影与音乐。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Rust 中 Box 的深度解析:作用、原理与最佳实践
Rust中的Box是核心智能指针,主要用于堆内存分配、所有权转移和解决递归类型问题。它将数据从栈移到堆,适用于大型数据或需要延长生命周期的场景。Box实现独占所有权和自动释放,编译后效率与手动管理相同。关键应用场景包括处理递归数据结构、实现trait对象、优化大数据传递和构建复杂类型。相比其他智能指针,Box开销最小但不支持共享所有权。最佳实践建议优先使用栈分配,必要时采用Box来防止栈溢出或减少复制开销。Box体现了Rust零成本抽象与安全内存管理的核心设计理念。原创 2025-08-15 21:44:09 · 1476 阅读 · 0 评论 -
Delphi7:THashedStringList 详细用法指南
THashedStringList 是 Delphi 中基于哈希表的高效字符串列表类,相比 TStringList 提供 O(1) 时间复杂度的快速查找能力。摘要内容包含:1) 基本创建和键值对操作;2) 高级功能如自定义分隔符和哈希函数;3) 性能优化技巧;4) 典型应用场景如配置解析和缓存系统;5) 常见问题解决方案。特别适合处理大型数据集(1000+项)和需要频繁查找的字符串操作,但需注意其不支持排序功能,可通过临时 TStringList 实现排序需求。原创 2025-08-15 15:26:22 · 551 阅读 · 1 评论 -
Delphi7:HashMap 键值对存储详解
Delphi 7 实现 HashMap 功能的解决方案摘要 在 Delphi 7 中,可通过以下方式模拟 HashMap: 推荐方案:使用 THashedStringList 支持字符串键值对,自动管理对象生命周期 高效查找(O(1)),原生支持无需第三方库 示例:HashMap.Values['key'] := 'value' 备选方案: TBucketList:支持任意键类型(需转为 Pointer),需手动释放对象 自定义类:封装 TBucketList 实现类型安全,适合复杂需求 第三方库:如 JV原创 2025-08-09 10:18:08 · 1143 阅读 · 0 评论 -
数据结构作业辅导:数据插入与查询的CPP编程方法
以图书管理程序为例,代码如下:struct Book { string id; string name; double price;};struct Book_List { int size; Book books[MAX_BOOK_LIST_SIZE];};void append_book(Book_List* book_list, Book book){ book_list->books[book_list->size] = book; ++book_lis原创 2021-08-14 15:35:27 · 257 阅读 · 0 评论 -
数据结构:编程作业点评——如何编写稍复杂一些的程序?
小侄子写了一个数据结构算法的练习,让我来点评一下。我们一起看看他的代码存在哪些问题。题目题目是写一个线性表的相关数据操作算法。具体就是写一个图书管理程序,图书的信息内容如下所示:代码#include<iostream>#include<string>#include<stdlib.h>using namespace std;//书籍结构体struct Book{ string ID;//编号 string Name;//书名.原创 2021-08-10 11:49:36 · 635 阅读 · 1 评论
分享