
数据结构
McRae
如果客户企图使用某个接口却没有获得他预期的行为,那这个代码就不该通过编译;如果代码通过了编译,它的作为就该是客户想要的。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
TopK问题——统计大家最爱玩的游戏
问题:统计大家最爱玩的前K种游戏 思路:大体思路是用库里的map来存放数据pair< string,int>可以统计。然后再比较int的值建大堆,堆排序之后取出前K的元素,存放在数组里返回。 代码://核心代码#include<algorithm>#include<map>#include<string>#include<vector>using namespace std;clas原创 2017-06-29 10:04:13 · 298 阅读 · 0 评论 -
如何创建一个只能在堆上产生对象的类
题目:如何创建一个只能在堆上产生对象的类一、分析: 1.定义一个只能在堆上产生对象的类,自然联想到new、malloc、calloc等动态分配内存的方法来产生对象。但在C++中,产生对象要调用构造函数,当然选择new来解决。 2.只能在堆上而不能在栈上创建对象,想到可以把构造函数定义成private或者protected 里面,防止在类外的栈空间上调用构造函数来创建对象。 3.可以定义一个成员原创 2017-05-11 00:10:25 · 871 阅读 · 0 评论 -
两个队列实现一个栈
这道题我们先应该搞清楚栈和队列这两种数据结构。队列:队列(queue)特点:先进先出(FIFO) 栈:(stack)特点:后进先出(FILO)。 思路: 创建一个栈,存放两个队列,一个队列用来存数据,一个队列中转数据。例如 1,2,3,4 在queue1中,要实现后进先出,则把前面三个数据移到queue2中,pop() 出queue1 ,最后再把queue2的数据移动到queue1中。原创 2017-05-23 16:33:03 · 234 阅读 · 0 评论 -
布隆过滤器(BloomFilter)
Bloom Filter简介 Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。布隆过滤器(英语:Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误转载 2017-07-13 19:26:51 · 366 阅读 · 0 评论