数据结构
文章平均质量分 92
Hani_97
Stay hungry,stay foolish。
展开
-
Linux 锁机制(1)之互斥量 mutex
Linux 锁机制(1)之互斥量 mutex1 互斥量1.1 互斥和同步区别2 互斥量接口API(linux)3 互斥量存在的问题3.1 问题(两种状态,经常死锁)3.2 解决:(+条件变量)3.3 条件变量的作用:4 条件变量: pthread_cond_t4.1 条件变量的使用及具体实现4.2 条件变量接口5 互斥量和条件变量使用伪代码6 互斥量和条件变量代码例子参考1 互斥量互斥: 是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。互斥量: 用来确保一个线程独占一个资源的访问。原创 2021-07-26 14:23:30 · 386 阅读 · 0 评论 -
树,二叉树,平衡二叉树,红黑树
红黑树参考太牛了,这个漫画,讲的通俗易懂。参考https://baijiahao.baidu.com/s?id=1641940303518144126&wfr=spider&for=pc原创 2020-03-26 16:19:53 · 242 阅读 · 0 评论 -
TLV(1)定义
TLV(1)定义1. 定义 TLV(Type-Length-Value)2. TLV的历史来源3. TLV优缺点参考1. 定义 TLV(Type-Length-Value)TLV 是一种常用的用于通信的结构体格式。T表示 tag (类型)L表示 length (value的长度)V表示 value。其中T和L是固定大小的,V是可变大小,L表示的是V的长度。2. TLV的历史来源...原创 2019-12-16 20:38:54 · 4840 阅读 · 0 评论 -
通俗易懂说单链表(1)逆置/翻转
通俗易懂说单链表(1)逆置/翻转 1. 前提2. 思想3. 伪代码4. 代码实现1. 前提该单链表带有头节点,头节点中没有数据。没有头节点更简单2. 思想思想:先将除了头节点外其他节点逆置,然后再加上头节点3. 伪代码开始时候:head->1->2->3->4->null p1 p2 p3结束时候:head->1->2<-...原创 2019-05-04 19:36:40 · 941 阅读 · 0 评论 -
通俗易懂说单链表(2)链表/环长度、有环,环入口
通俗易懂说单链表(2)链表/环长度、有环,环入口1. 单链表长度2. 单链表是否有环?2.1 思想2.2 代码实现3. 单链表环入口3.1 思想3.2 代码实现4. 单链表环长度4.1 思想4.2 代码实现5. 参考1. 单链表长度2. 单链表是否有环?2.1 思想设置两个指针,都指向头结点,一个走的快,一个走的慢,如果有环,那么若干步以后,快指针总会超过慢的指针一圈;如果没有,那么若...原创 2019-05-04 22:00:32 · 2346 阅读 · 3 评论 -
通俗易懂说单链表(3)合并两个有序链表
通俗易懂说单链表(3)合并两个有序链表1. 递归实现2. 非递归实现1. 递归实现typedef struct node{ int value; struct node *next;}Node, *pNode;//采用递归的方法实现Node *SingleListMerge(Node *head1,Node *head2){ if(head1==NULL) return h...原创 2019-05-05 22:02:53 · 399 阅读 · 0 评论 -
hash 和 hash桶
hash 桶哈希桶就是为了解决哈希冲突哈希桶算法其实就是链地址解决冲突的方https://www.cnblogs.com/xqn2017/p/7997666.htmlhttps://blog.csdn.net/tanggao1314/article/details/51457585...原创 2019-08-31 17:10:23 · 6184 阅读 · 4 评论