|
|
97c403b636
|
chore(perf): 性能测试新增run_count并用测试ringbuf和segarray的性能,直观看出差异。
|
2026-05-21 16:33:58 +08:00 |
|
|
|
e33d1cad60
|
refactor(core)!: 重构容器接口区分 reserve 与 resize,并更新ustring_new接口统一uview_t参数
|
2026-05-18 11:43:09 +08:00 |
|
|
|
917cee5d0b
|
feat(internal): 新增基础类型的通用比较函数
|
2026-05-17 21:28:38 +08:00 |
|
|
|
4396d4d337
|
feat(segarray): 实现动态扩容与惰性初始化
|
2026-05-17 20:49:26 +08:00 |
|
|
|
f5c3b178c5
|
feat(deque): 支持 segarray 后端实现
关于容量有些争议,后续考虑怎么处理。
- 重构 `deque` 源码,使用条件编译适配 `ringbuf` 或 `segarray`
- 修复 `segarray` 扩容逻辑,使用正确的段大小 `_segsize` 进行分配
- 优化 `segarray` 初始化逻辑,支持容量为 0 时的延迟分配
|
2026-05-17 17:08:22 +08:00 |
|
|
|
72db0be317
|
feat(stl): 新增 arraylist 并统一迭代器顺序枚举类型
- 重构迭代器顺序枚举,引入 linear_order_t、tree_order_t 等通用类型,并替换。
- 修复 darray 中二分查找返回索引计算错误的问题
- 优化 segarray 的内存分配错误处理
- 增强 logger 模块,支持时间戳打印及格式化输出
|
2026-05-17 10:48:19 +08:00 |
|
|
|
f8ba5197a8
|
darray添加iter操作,deque新增resize,更新deque的单元测试
|
2026-05-14 19:22:17 +08:00 |
|
|
|
8a3455efee
|
refactor(ringbuf)!: 重命名模块并增加动态扩容与静态内存支持
|
2026-05-14 14:15:10 +08:00 |
|
|
|
97653622c1
|
stack->peek把data的内存给修改了,后续再排查一下原因
|
2026-05-13 19:27:38 +08:00 |
|
|
|
cd6eff28a7
|
ringbuffer重构底层代码,并将obj和index的操作独立成内联函数,另外将deque的底层架构直接修改为ringbuffer
|
2026-05-12 18:42:43 +08:00 |
|
|
|
9a9f18ac40
|
将index、len、size等变量的定义,都配置成size_t而不是uint32_t,至于列表对应的负数索引,先按照int吧,后续有必要再修改成ssize_t
|
2026-05-12 10:36:31 +08:00 |
|
|
|
26eeb65cc9
|
refactor(core)!: 重构链表核心API,增加 const 正确性与自定义断言
- 将所有打印和比较函数的参数指针从 `void*` 修改为 `const void*`,增强类型安全
- 引入自定义断言宏 `unicstl_assert` 及其实现,替换标准 `assert`
- 优化动态数组容量增长策略,新增 `unicstl_new_capacity` 函数
- 重构链表 接口:`push`/`pop` 重命名为 `push_back`/`pop_front`,新增 `push_front`/`pop_back`/`insert`/`remove`/`contains` 方法
- 移除链表结构体中未使用的 `_index_front` 和 `_index_back` 成员
- 在头文件中补充关键函数的时间复杂度注释
|
2026-05-12 02:26:21 +08:00 |
|
|
|
9322db6b62
|
修改common为unicstl_internal,顺便给其他数据结构都添加默认的compare和print_obj接口
|
2025-04-30 23:26:36 +08:00 |
|
|
|
6fb620850e
|
双向队列删除非核心代码,至于其底层实现是否权衡各种场景,则后续再考虑优化。
|
2025-04-29 11:41:31 +08:00 |
|
|
|
ca4ab10123
|
deque区分正向和反向遍历
|
2025-04-27 01:16:22 +08:00 |
|
|
|
08ba5296be
|
暂时用不到的函数就先屏蔽了
|
2025-04-25 01:30:37 +08:00 |
|
|
|
b3d7c96484
|
deque添加iterator
|
2025-04-24 15:20:49 +08:00 |
|
|
|
a3c60c7d38
|
deque修改接口函数
|
2025-04-23 10:36:09 +08:00 |
|
|
|
170c2a5421
|
编码统一使用utf8
|
2024-08-30 14:18:17 +08:00 |
|
|
|
447200a5e6
|
修改数据结构释放函数参数,以保证结构体指针被释放后能恢复到NULL
|
2024-08-28 00:23:18 +08:00 |
|
|
|
7c1c811ea1
|
修改下注释
|
2024-07-03 14:41:41 +08:00 |
|
|
|
f58873baaa
|
修改deque,将头节点和尾节点拆开。方便代码理解。
|
2024-07-03 14:23:04 +08:00 |
|
|
|
a36bfd7507
|
添加注释
|
2024-06-23 14:43:06 +08:00 |
|
|
|
27ac581846
|
给各数据结构添加new和free接口
|
2024-06-23 14:16:19 +08:00 |
|
|
|
5e7d07c7de
|
想着把工程更新下,以后用cmake管理
|
2024-06-21 17:03:51 +08:00 |
|