![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 76
stevewongbuaa
这个作者很懒,什么都没留下…
展开
-
scheduledThreadPoolExecutor 原理 delayedQueue
背景这种定时器也常用,不好奇怎么实现的吗?!参考https://juejin.im/post/5d63ce9b6fb9a06b28635ecfdemo先看个demo吧package com.vava.ecommerse.scheduler;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;/** * @author St原创 2020-06-05 16:09:31 · 538 阅读 · 0 评论 -
树形结构 多叉树 通讯录 文件目录 贴吧跟帖
应用 部门结构,帖子跟帖跟帖再跟帖,文件目录 参考 https://stackoverflow.com/questions/935098/database-structure-for-tree-data-structure https://time.geekbang.org/column/article/207456 有多种方案可以实现这个结构,但具体用哪个,需要看实际的需求。...原创 2020-04-22 18:52:25 · 276 阅读 · 0 评论 -
优先队列与堆
参考文章优先队列及最小堆最大堆priority_queue的用法白话经典算法系列之七 堆与堆排序STL系列之四 heap 堆优先队列应用 首先优先队列是由堆来实现的,所以以后用到优先队列的地方,可以直接用C++中的STL来直接实现,但是最好还是自己实现几次,否则我们只会成为傻瓜,什么东西就知道怎么用,不知道是如何实现的。 优先队列适用的范围很广,比如:构造哈夫曼编码 构造哈夫曼编码是找到转载 2016-07-23 08:44:17 · 373 阅读 · 0 评论 -
topk 问题
问题描述在海量的数据中找出最大(最小)的k个数据。笔记考虑使用堆。以找出最大的k个数据为例。建立小顶堆。堆顶元素总是堆里面最小的。首先从海量数据中拿出k个数据建立堆,调整好堆,此时堆顶元素就是堆里面最小的。接下来,海量数据一个一个输入,每个数据与堆顶元素比较。如果比堆顶元素小,说明这个数据比整个堆的元素都要小,可以扔掉;如果比堆顶元素大,说明这个元素可以进入堆里。最后堆里面的元素就是海量数据里原创 2016-08-04 10:48:13 · 485 阅读 · 0 评论 -
散列表 哈希表 原理 python实现
参考算法导论引文 散列表(hash table)是实现字典操作的一种有效的数据结构。尽管最坏的情况下,散列表中查找一个元素的时间与链表中查找的时间相同,达到了O(n)。然而实际应用中,散列的查找的性能是极好的。在一些合理的假设下,在散列表中查找一个元素的平均时间是O(1)。冲突和解决利用哈希函数h(k),可以把关键字映射到一个小的数组中,但是会发生冲突。解决方法有链接法和开放寻址法。链接法以链原创 2016-08-26 09:44:02 · 6791 阅读 · 0 评论 -
又见神奇的异或。Trie树。今日头条。
又见神奇的异或。Trie树。@(algorithm)先来看一道题。异或最大值 http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1216Description 给定一些数,求这些数中两个数的异或值最大的那个值Input 第一行为数字个数n,1 <= n <= 10 ^ 5。接下来n行每行一个32位有符号非负整数。Output 任意两数最大异或值原创 2016-09-22 22:45:58 · 2093 阅读 · 0 评论