|
|
dcce634326
|
segarray的流程还不对,今天太晚了,明天再调整。
|
2026-05-15 02:45:21 +08:00 |
|
|
|
fb7ac93623
|
refactor(queue): 统一初始化接口并添加 resize 功能
|
2026-05-15 01:40:59 +08:00 |
|
|
|
7741ac3f40
|
refactor(stack): 统一构造函数并添加扩容与满栈检测
|
2026-05-15 01:10:07 +08:00 |
|
|
|
d36346ce00
|
feat(algo): 新增算法模块并给darray集成排序和查找功能,index底层改为调用search
|
2026-05-15 00:04:04 +08:00 |
|
|
|
f8ba5197a8
|
darray添加iter操作,deque新增resize,更新deque的单元测试
|
2026-05-14 19:22:17 +08:00 |
|
|
|
3fda59ba06
|
refactor(queue):底层修改为deque
|
2026-05-14 18:29:12 +08:00 |
|
|
|
10e95ae23f
|
docs: 更新说明
|
2026-05-14 15:02:35 +08:00 |
|
|
|
8a3455efee
|
refactor(ringbuf)!: 重命名模块并增加动态扩容与静态内存支持
|
2026-05-14 14:15:10 +08:00 |
|
|
|
55cff2c2ba
|
将darray的索引类型修正为 size_t 并 新增栈和队列的嵌入式接口
|
2026-05-14 01:45:28 +08:00 |
|
|
|
f512f72d2e
|
refactor(darray): 优化内存策略并移除动态扩容开关。固定容量场景交由上层封装,darray不再支持。
|
2026-05-14 00:32:49 +08:00 |
|
|
|
864273cef2
|
bugfix(stack): 栈的stack_new宏定义多套了一层sizeof,展开后sizeof(sizeof(int)),让obj_size=8了
|
2026-05-13 21:50:31 +08:00 |
|
|
|
97653622c1
|
stack->peek把data的内存给修改了,后续再排查一下原因
|
2026-05-13 19:27:38 +08:00 |
|
|
|
2278bad0a4
|
feat(perf): 重构性能测试框架(支持多组参数配置)并增加perf_log(利用darray实现并格式化输出)
|
2026-05-13 17:00:39 +08:00 |
|
|
|
c422bc976a
|
perf性能测试代码实现,但测试代码写起来怪怪的,日志打印的信息也不直观。后续再调整吧
|
2026-05-12 23:38:49 +08:00 |
|
|
|
cd6eff28a7
|
ringbuffer重构底层代码,并将obj和index的操作独立成内联函数,另外将deque的底层架构直接修改为ringbuffer
|
2026-05-12 18:42:43 +08:00 |
|
|
|
a58d480ae4
|
ringbuffer调试通过,疑问点:感觉复用darray相对于直接malloc并没有简化多少,只是把计算偏移这部分简化了。
|
2026-05-12 16:29:40 +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 |
|
|
|
17a9d51437
|
linklist先照搬了queue,后续用到再修改吧。另外,darray中的部分函数传参,我添加了const修饰
|
2026-05-11 19:05:58 +08:00 |
|
|
|
1532d3716c
|
darray实现
|
2026-05-11 15:16:42 +08:00 |
|
|
|
803f489ee7
|
Linux平台编译也通过
|
2026-02-13 18:36:03 +08:00 |
|
|
|
1081cda4fe
|
添加修改日志,定版v0.0.2
|
2025-05-06 11:29:39 +08:00 |
|
|
|
df006ba37a
|
删除非必要assert,否则可能导致demo卡主
|
2025-04-30 23:43:54 +08:00 |
|
|
|
9322db6b62
|
修改common为unicstl_internal,顺便给其他数据结构都添加默认的compare和print_obj接口
|
2025-04-30 23:26:36 +08:00 |
|
|
|
32f2605656
|
基本上完善到我理想中的样子了
|
2025-04-30 15:01:55 +08:00 |
|
|
|
ccae6a9d8f
|
将index索引转换独立出一个函数
|
2025-04-30 14:53:30 +08:00 |
|
|
|
65a60df00b
|
修改变量
|
2025-04-30 14:44:04 +08:00 |
|
|
|
e5ea2efe84
|
改了半天才发现,原来我最初写的才是最优解
|
2025-04-30 14:41:10 +08:00 |
|
|
|
46caba5943
|
还是不对,这么处理感觉好复杂啊,是不是我全部修改为闭区间容易处理一点?
|
2025-04-30 14:08:10 +08:00 |
|
|
|
3f8f418d4e
|
逻辑相对清晰一点,还差部分逻辑没调通
|
2025-04-30 13:25:12 +08:00 |
|
|
|
ce9acda014
|
条件判断还存在问题
|
2025-04-30 11:45:22 +08:00 |
|
|
|
e86657d807
|
先正序的情况修改完成
|
2025-04-30 11:33:54 +08:00 |
|
|
|
d2be5d229f
|
原版代码测试通过
|
2025-04-30 11:16:23 +08:00 |
|
|
|
97ae2a54c4
|
添加新的测试项,并尝试slice是否可以优化的更加直观
|
2025-04-30 11:14:59 +08:00 |
|
|
|
802d63641c
|
针对start和end超出范围的处理
|
2025-04-30 02:18:07 +08:00 |
|
|
|
b5a83f865e
|
添加step=2的单元测试
|
2025-04-30 01:50:58 +08:00 |
|
|
|
e85e1c56f3
|
将切片的各种情况分开来测试
|
2025-04-30 01:38:06 +08:00 |
|
|
|
2dfc0b2b17
|
先调试通过了,后续再考虑优化
|
2025-04-30 01:28:37 +08:00 |
|
|
|
0f18ddf567
|
slice单元测试基本都添加完毕,现在可以针对性的进行修改了
|
2025-04-30 00:58:28 +08:00 |
|
|
|
178d0bf5b4
|
看起来得加一个宏定义了,专门用语处理end无限长的
|
2025-04-30 00:37:04 +08:00 |
|
|
|
e49f425e43
|
添加函数注释
|
2025-04-30 00:17:59 +08:00 |
|
|
|
643d601c6e
|
添加slice函数,但是还有两个问题没有解决
|
2025-04-30 00:01:37 +08:00 |
|
|
|
93c0cfbd37
|
添加list的slice函数
|
2025-04-29 22:55:12 +08:00 |
|
|
|
24844219df
|
添加insert和delete的单元测试
|
2025-04-29 22:04:22 +08:00 |
|
|
|
80f8722e2e
|
append和pop函数复用了insert和delete,理解起来更加直观
|
2025-04-29 16:49:54 +08:00 |
|
|
|
0c545dfca5
|
insert函数的bug修复完毕
|
2025-04-29 16:48:06 +08:00 |
|
|
|
c8a48e6c63
|
想统一inset和pop但是编译测试不通
|
2025-04-29 16:25:27 +08:00 |
|
|
|
851f815120
|
修改list相关接口描述以及调通由于删除deque的接口导致的编译问题
|
2025-04-29 14:53:54 +08:00 |
|
|
|
446ede15db
|
添加list实现原理说明
|
2025-04-29 11:52:15 +08:00 |
|
|
|
6fb620850e
|
双向队列删除非核心代码,至于其底层实现是否权衡各种场景,则后续再考虑优化。
|
2025-04-29 11:41:31 +08:00 |
|