|
|
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 |
|
|
|
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 |
|
|
|
9322db6b62
|
修改common为unicstl_internal,顺便给其他数据结构都添加默认的compare和print_obj接口
|
2025-04-30 23:26:36 +08:00 |
|
|
|
0f18ddf567
|
slice单元测试基本都添加完毕,现在可以针对性的进行修改了
|
2025-04-30 00:58:28 +08:00 |
|
|
|
643d601c6e
|
添加slice函数,但是还有两个问题没有解决
|
2025-04-30 00:01:37 +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 |
|
|
|
4acdcf3ec7
|
开启assert后解决编译和测试问题
|
2025-04-28 00:59:03 +08:00 |
|
|
|
4aa966bb93
|
修改iter的parent为_container,避免理解偏差
|
2025-04-27 13:42:30 +08:00 |
|
|
|
c70b007386
|
iter的node一定是当前节点,因此cur的前缀就有些多余了
|
2025-04-27 12:44:47 +08:00 |
|
|
|
4691b848ef
|
修改iter的成员属性_cur为_index更加直观
|
2025-04-27 12:41:10 +08:00 |
|
|
|
1982a90a3e
|
tree删除非必要属性,把order遍历相关的操作都放在iterator中了
|
2025-04-27 11:43:57 +08:00 |
|
|
|
d278ef008f
|
tree_order枚举类型重命名,防冲突
|
2025-04-27 11:41:20 +08:00 |
|
|
|
7a7af3152a
|
_rebalance作为私有函数
|
2025-04-27 11:06:16 +08:00 |
|
|
|
59e5c9be71
|
获取树高的接口重新定义
|
2025-04-27 11:05:12 +08:00 |
|
|
|
313406970c
|
修改头文件的核心操作和基础操作顺序,方便一眼看出
|
2025-04-27 02:29:09 +08:00 |
|
|
|
ca4ab10123
|
deque区分正向和反向遍历
|
2025-04-27 01:16:22 +08:00 |
|
|
|
9e270b7425
|
后续考虑matrix是利用list来实现还是直接函数指针实现。但考虑到用一维指针或者二维指针都有不方便的地方。
|
2025-04-27 00:16:44 +08:00 |
|
|
|
98eb005a4a
|
bfs的遍历还存在问题
|
2025-04-26 15:01:15 +08:00 |
|
|
|
ce973043d8
|
graph默认只对顶点进行遍历,后续实现bfs和dfs
|
2025-04-26 13:40:23 +08:00 |
|
|
|
3ac92de18e
|
边的核心操作都添测试通过了,但是我个人觉得写的不好。后续再考虑优化。
|
2025-04-25 18:19:22 +08:00 |
|
|
|
f63aa4db0a
|
为什么from_node和to_node的obj不符合预期
|
2025-04-25 16:55:22 +08:00 |
|
|
|
163f3c55da
|
vertex的添加代码实现并调试通过
|
2025-04-25 13:39:17 +08:00 |
|
|
|
46f1f365fb
|
添加新增的graph成员函数定义
|
2025-04-25 13:16:16 +08:00 |
|
|
|
af1a3703ba
|
graph的vertex和edge结构体都重新定义,kernel函数也重新命名
|
2025-04-25 13:03:23 +08:00 |
|
|
|
b788dd74ee
|
graph结构体node重新规划
|
2025-04-25 10:47:42 +08:00 |
|
|
|
4fb9ed9d58
|
graph修改代码结构
|
2025-04-25 10:04:03 +08:00 |
|
|
|
14d64cc0a2
|
修改枚举类型,命名更加简洁
|
2025-04-25 01:47:58 +08:00 |
|
|
|
08ba5296be
|
暂时用不到的函数就先屏蔽了
|
2025-04-25 01:30:37 +08:00 |
|
|
|
ecc568bb90
|
将对外用不到的接口放在tree.c作为局部函数调用
|
2025-04-25 01:09:37 +08:00 |
|
|
|
3ed9fb8437
|
去掉tree的cur_node,和迭代器相关的都共用迭代器的_cur_node节点指针了
|
2025-04-25 00:56:25 +08:00 |
|
|
|
d682bed186
|
tree的init函数调整
|
2025-04-25 00:28:14 +08:00 |
|
|
|
461e32b430
|
tree删除旧版迭代器接口
|
2025-04-24 23:35:31 +08:00 |
|
|
|
8ffde2b608
|
tree的新迭代器已经实现,但是卡死。
|
2025-04-24 18:40:22 +08:00 |
|
|
|
bb8e01fe7c
|
tree先添加了新的迭代器接口,但是还未实现。
|
2025-04-24 18:22:56 +08:00 |
|
|
|
88580acb1e
|
heap的迭代器实现
|
2025-04-24 18:08:16 +08:00 |
|
|
|
d672db224c
|
添加了一下版本号
|
2025-04-24 17:50:05 +08:00 |
|
|
|
29db0dae43
|
暂不是用函数注册的方式,毕竟增加了额外内存成本
|
2025-04-24 17:26:10 +08:00 |
|
|
|
0369d58147
|
heap删除大小堆的旧标志
|
2025-04-24 16:58:15 +08:00 |
|
|
|
02b09e729d
|
堆不是最大堆就是最小堆,直接对外拆分成两套接口
|
2025-04-24 16:50:35 +08:00 |
|
|
|
b3d7c96484
|
deque添加iterator
|
2025-04-24 15:20:49 +08:00 |
|
|
|
07bb44a4d8
|
queue添加iter
|
2025-04-24 14:26:41 +08:00 |
|