数据结构与算法
文章平均质量分 77
明里灰
不愤不启 不悱不发.
展开
-
《数据结构与算法之美》读书笔记4(递归)
递归是一种应用非常广泛的算法。之后要讲的很多数据结构和算法的编码实现都要用到递归:DFS深度优先搜索,前中后序二叉树遍历等。推荐注册返佣金这个功能,用户A推荐用户B来注册,用户B推荐用户C来注册。可以说用户B的“最终推荐人”为用户A,而用户B的“最终推荐人”为A,用户A没有“最终推荐人”。所以给定一个用户ID,然后查询这个用户的“最终推荐人”?这时就要用到递归。原创 2024-04-25 15:49:14 · 418 阅读 · 0 评论 -
《数据结构和算法之美》读书笔记3(栈,队列)
基于数组实现的有界队列,队列的大小有限,所以线程池中排队请求超过队列大小时,接下来的请求就会被拒绝,这种方式对响应时间敏感的系统就更加合理。如果当前栈的大小为k,并且已经满了,当再有新的数据要入栈时,就需要重新申请2倍大小的内存,并且做k-1次入栈操作,我们都不需要再重新申请内存和搬移数据,所以这k-1次入栈都只需要一个simple-push操作就能完成。基于链表的实现方式,可以实现一个支持无线排队的无界队列,但是可能会导致过多的请求排队等待,请求处理的响应时间过长。用链表实现的栈,叫做链式栈。原创 2024-04-25 15:11:40 · 970 阅读 · 0 评论 -
《数据结构与算法之美》读书笔记2
将摸个变量赋值给指针,实际上就是将这个变量的地址赋给指针,或者,指针中存储了这个变量的地址,指向了这个变量,所以可以通过指针找到这个变量。2.内存泄漏或指针丢失删除链表节点时,也要手动释放内存空间,否则会出现内存泄漏的问题。原创 2023-11-26 16:07:20 · 543 阅读 · 0 评论 -
二叉搜索树
二叉搜索树又叫二叉查找树或者二叉排序树。它支持快速的查找,插入删除一个数据。它的每个结点是一个对象,包括 key,卫星数据,还不快一些为了维护树结构所需要的信息:left、right、parent,分别指向左孩子、右孩子、父结点。如果孩子节点或者父结点不存在时,用NULL表示。每个结点都比它的左节点打,比右节点小每个结点的左右子树都是一课二叉搜索树对一颗二叉搜索树进行中序遍历的结果是从小到大排序。原创 2023-05-28 22:36:04 · 458 阅读 · 0 评论