
数据结构
ngany
这个作者很懒,什么都没留下…
展开
-
数据结构之队列
源文件部分#include <stdio.h>#include <stdint.h>#include "queue.h"#define Q_DIM(array_) (sizeof(array_) / sizeof(array_[0]))typedef unsigned int bool;uint32_t MyEvtPoolSto[5];Queue_ My...原创 2018-12-27 20:17:31 · 165 阅读 · 0 评论 -
队列结构、内存管理与QP原生事件队列、QP原生事件池
目录发布事件与取出、处理事件的简要说明原生事件队列原生事件队列初始化使用MyQueue_post_FIFO发送事件使用MyQueue_get函数获取一个事件队列使用情况简图QP原生事件池/内存池事件池的初始化从池里获得一个内存块把一个内存块回收到池内VS测试代码队列事件池头文件主函数发布事件与取出、处理事件的简要说明发布事件从...原创 2018-12-28 17:18:28 · 994 阅读 · 1 评论 -
FreeRTOS内存管理heap_2
简要介绍heap2采用链表的方法管理内存堆。链表结构体的next指针指向下一个空闲内存块。并且链表连接的内存块按照从小到大的顺序排列。分配内存的时候,可以遍历查询。申请内存时,查询到合适大小的内存后,如果内存有多,那么需要割下多余内存,重新插入到内存链表中,按照从小到大的顺序,在合适的位置插入。释放内存的时候,通过释放的地址找到该内存块的链表结构体,给出要释放的内存的大小,并插入到内存堆链...原创 2019-01-04 16:02:39 · 751 阅读 · 0 评论 -
C语言 int data = "pocky";
void main(void){ int data = "pocky"; int *s = "pocky"; printf("data is %d \n", data); printf("something in data is %s \n", data); printf("s real addr is %d \n", &s); printf("s point addr i...原创 2019-04-02 00:40:02 · 811 阅读 · 0 评论 -
二叉查找树
前驱节点有左子树,前驱节点为左子树的最右节点; 没有左子树,且本身为右子树,前驱节点为父节点; 没有左子树,且本身为左子树,向父节点查找,第一个作为右子树节点的父节点的父节点;删除节点没有子树,直接删除 只有左子树或者右子树,孩子节点代替删除节点; 同时又左右子树,前驱节点的值保存到当前节点,删除前驱节点;(这时前驱节点一定为第1种情况,一定没有子树,可以直接删除)#i...原创 2019-07-25 16:37:06 · 93 阅读 · 0 评论