摘要:一、蓄水池抽样 收到一堆的数据包,数据包数量N很大,且N直到处理完所有数据之前都不可知, 请问如何在只遍历一遍数据(O(N))的情况下,能够随机选取出m个不重复的数据? 场景包含3个前提条件 1、数据包数量N很大,不可知,所以不能直接在N个数据包中取随机数 2、时间复杂度O(N),只能遍历一遍。 3
阅读全文
|
10 2019 档案
摘要:一、蓄水池抽样 收到一堆的数据包,数据包数量N很大,且N直到处理完所有数据之前都不可知, 请问如何在只遍历一遍数据(O(N))的情况下,能够随机选取出m个不重复的数据? 场景包含3个前提条件 1、数据包数量N很大,不可知,所以不能直接在N个数据包中取随机数 2、时间复杂度O(N),只能遍历一遍。 3
阅读全文
摘要:一、strlen() strlen()为计算字符串长度的函数,以‘\0’为字符串结束标志。注意:其传入参数必须是字符串指针(char*), 当传入的是数组名时,实际上数组退化成指针了。 二、sizeof() sizeof()为运算符,用于计算所分配给元素的内存大小,其返回结果类型为size_t。
阅读全文
摘要:定时器应该包含哪些内容呢, 做一个定时器,即使用一个线程不断循环检测 一、设置时钟 SetTimer(uLong uTimerID,uint64 uTimerSpace,conststchar* szDes) uTimerID定时器ID,唯一性,通过它回调函数,uTimerSpace 定时器调用间隔
阅读全文
摘要:一、随机数洗牌 //pArray 要打乱的数组 //uCount 数组长度 //uItemSize 数组中每个元素的大小 void CGameConvenient::Shuffle(void *pArray,ushort uCount,ushort uItemSize) { if(uCount<=1
阅读全文
摘要:如下代码,向redis发送命令 SendCommand("HSET %b %b %b",key.data(),key.size(),filed.data(),filed.size(),value.data(),value.size()); 实际调用的即如下接口redisvCommand,上面第一个参
阅读全文
摘要:一、前提 1、二叉树 2、叶子带权值 3、带权路径长度,根节点到各个叶子节点的路径与相应叶子节点权值的乘机之和 4、带权路径长度最小的二叉树为哈夫曼树 二、基本思想 1、选取所有分支中权值最小的两个两棵树(或者节点),将其作为左右子树构造一个新的二叉树。 2、删除小的两棵树,将新构造的树加入到选择中
阅读全文
|