select * from A order by cast(name as unsigned);
今天在学习十进制与二进制的相互转换,学到小数的十进制转换到二进制时,所以我想着能不能用我这菜鸡技术,利用C++来实现只把十进制小数转换成二进制。
这里所采用的方法其实就是把多条件进行合并,将其转换为单条件查找。...VLOOKUP和CHOOSE函数组合 VLOOKUP和CHOOSE函数组合为数组公式进行查询:=VLOOKUP(E2&F2,CHOOSE(TRANSPOSE(ROW(1:2)),A2:A7&B2:B7,...TRANSPOSE形成一个”1行2列”的内存转置数组,里面的内容是: {“电脑ThinkPad”,1760;”手机华为”,2938;”iPad苹果”,1731;”电脑苹果”,1460;”手机三星”,2039...;”手机VIVO”,1629} 这也相当于变相将多条件转换为单条件,从而实现查询效果。...综上几种方法,大都是利用函数转换的方法,将多条件查询转为单条件,从而实现查询功能。
")) 可能你还不知道,在某些公式结构中,MIN函数具有强制返回数组的能力,且无需按Ctrl+Shift+Enter组合键。...此时公式1转换为: =0+MID(“123ABC456“,MIN(FIND({0,1,2,3,4,5,6,7,8,9},"123ABC4560.0588235294117647")),LEN(A1))...A1))),1)),0)-1) 这是一个数组公式。...0)-1) 转换为(注意,这里是如何将得到的数组颠倒,从而使得从字符串的末尾到开头逐个获取字符成为可能): =0+RIGHT(“ABC456”,MATCH(FALSE,ISNUMBER(0+MID(“ABC456...),0)-1) 这是一个数组公式。
FILTER - 根据您定义的标准过滤数据。 SORT - 按指定列对一系列单元格进行排序。 SORTBY - 按另一个范围或数组对一系列单元格进行排序。 RANDARRAY - 生成随机数数组。...TOCOL - 将数组或范围转换为单个列。 TOROW - 将范围或数组转换为单行。 WRAPCOLS - 根据每行指定的值数将行或列转换为二维数组。...三、应用案例——查询多列结果 以我们常用的vlookup为例。在下图这种场景中,需要查询不同产品,三个地区的售价。常规做法,我们需要在I2:K2三个单元格中,各写一个相似的vlookup公式。...如果使用数组运算,我们只需要在I3单元格输入一个公式,即可自动填充到J和K中。注意,此时的数组是通过大括号来触发的。公式中第三个参数,用大括号引用了3、4、5列,即要查询第3、4、5列的值。...上文两个例子中,我们一个公式产生的结果,会自动填充到相邻的范围。假设我们不需要这种扩展填充,希望只显示当前单元格的值,那么我们只需要在公式中的数组部分前面加上@。
尤其可以帮助增强您的应用程序,并将内容从一组简单的数据转换为更加有用、易懂的类似于Excel的仪表板。 好了,言归正传,一起来看看当表格插件遇到ChatGPT之后会擦出什么样的火花。 一....ChatGPT 公式 过滤数据:通过使用GPT.FILTER公式,可以方便地进行数据过滤。只需要选择数据,添加描述,GPT.FILTER就会返回动态数组填充到单元格。 2....公式分析 单元格中的复杂嵌套公式,通过GPT分析后返回描述,帮用户快速理解表格中公式含义 3. 公式优化 对于复杂公式,可以给出多种优化方案,减少公式长度,或者提升公式运算效率。...数据透视表建议 选择包含标题的表格数据,给出数据透视表分析的建议,包含如何设置行、里和数组,同时说明分析数据的意义。 2....用户可以使用自然语言查询和指令与电子表格进行交互,而无需手动编写复杂的公式,配置数据透表等功能;通过ChatGPT解析和执行用户的数据操作请求更加快捷简单,提高了工作效率;同时ChatGPT也可以给出一些分析建议和错误检测
布隆过滤器核心就是两点,bit数组和hash。 你听到这里是不是表示不屑,废话,map还不是一个数组和hash。没错,存放数据无非就是个数组和hash。但布隆过滤器的数组和hash有点不一样。...hash生成的规则 嗯,这是布隆过滤器核心思想之一,通过查找布隆过滤器的论文可知,它有一个公式,通过这个公式来计算hash。...另外可以看到hash1和hash2的生成规则,hash1是通过murmur算法来生成一个long值,然后通过转int来得到hash1,然后通过位运算得到hash2。...有下面两个公式,分别用来计算推荐的数组size以及hash functions的个数。这里数组的大小用m表示,hash functions的个数用k来表示。n则表示数据量的大小。 ? ?...为了避免无谓的查询,在每个cache服务器上保存其兄弟服务器的缓存关键字,以bloomfilter方式存储。
图1 A:想了半天,没有想到简单的公式。使用数组公式找到N对应的日期数不难,但是如何将找到的多个日期数连在一起却难倒了我!...下面是我的数组公式: =TEXTJOIN(",",TRUE,SMALL(IF($B3:$M3="N",COLUMN($B$3:$M$3)-1),ROW(INDIRECT("1:"& COUNTIF($B3...公式中: COLUMN($B$3:$M$3)-1 得到数字数组{1,2,3,4,5,6,7,8,9,10,11,12},对应日期数值。...3个最小数值组成的数组: {6;7;9} 此时,公式转换为: TEXTJOIN(“,”,TRUE,{6;7;9}) 表明使用“,”将数组{6;7;9}中的值连接起来,忽略空值。...特别是Excel 2016之前的版本中怎样才能实现公式中生成的数组连接呢?
一、概述 1、什么是布隆过滤器 本质上布隆过滤器是一种数据结构,比较巧妙的概率型数据结构,特点是高效地插入和查询。根据查询结果可以用来告诉你 某样东西一定不存在或者可能存在 这句话是该算法的核心。...3、布隆过滤器为什么会有误判 当插入的元素越来越多时,当一个不在布隆过滤器中的元素,经过同样规则的哈希计算之后,得到的值在位数组中查询,有可能这些位置因为其他的元素先被置1了。...设bit数组大小为m,样本数量为n,失误率为p。 由题可知 n = 100亿,p = 0.01% 布隆过滤器的大小m公式 求得 m = 19.19n,向上取整为 20n。...误判率p、布隆过滤器长度m、元素个数n、哈希函数个数k 我们再来一步一步由简单到难推导公式。 1、误差率公式推导 前提条件:就是假设每个元素哈希得到的值分布到m数组上的每一个数组节点的概率是相等的。...因为当一个布隆过滤器中不存在的元素进来的是的时候,首先通过hash算法产生k个哈希值,分布在m数组上都为1的的概率不就是上面推导出的这个公式吗,那不就是误差吗?
: forEach() :就是for的升级版,forEach返回值undeifned filter():过滤,遍历满足条件的数组元素,返回新数组 map():对原数组加工处理,得到一个新数组 reduce...也称伪数组 LikeArray,只能通过length获取数量,和通过下标指定具体的某个元素,但不能使用数组的API方法 类数组的使用场景:获取的dom集合,arguments,… – 如何将类数组转换为数组...String.prototype.quchukongge=function() { var reg=/^\s+|\s+$/g return this.replace(reg,’’) } toUpperCase() 字母转大写...:数组转字符串 slice(起始下标,结束下标) 取子串 replace(要查找的字符串或匹配的正则,要替换的内容) 替换 indexOf() 查找,有返回下标,没有返回-1 includes(...范围 数量=y-x+1 x=10 ,y=20 11 num=y-x+1 数量=11 起始值:10 公式:Math.floor(Math.random()*数量)+起始值 封装了一个随机函数: /
在我们编写公式时,特别是编写数组公式时,往往会生成由TRUE/FALSE值组成的中间数组。...在Excel中,TRUE值等于1,FALSE值等于0,那么如何将TRUE/FALSE值转换成1/0呢?最常用的方法是使用数学运算。...常使用下列三种数学运算将TRUE和FALSE转换为等效的数字: 1. 与1相乘: {TRUE,FASLE}*1={1,0} 2. 与0相加: {TRUE,FALSE}+0={1,0} 3....使用双减号: --{TRUE,FALSE}=(-1)*(-1)*{TRUE,FALSE}=1*{TRUE,FALSE}={1,0} 例如,在《Excel公式练习63:求数值中的各个数字之和》中,我们可以使用下面的公式...有时候,公式本身就会与生成的数字相乘,这样也会将TRUE/FALSE进行相应的数字转换。至于如何使用,具体情况灵活使用相应的方法。
我们所需要做的就是以某种方式找到一种将值173转换为1个“百”,7个“十”和3个“一”的方法。 我们一般采用以下方式推导: 在173中有1个“百”。 减去1个“百”后,余下的73有7个“十”。...如果要转换为二进制的话,可想而知,公式会怎样! 幸运的是,还有一种替代方法可以获取每个值。...图4 这里,我们可以看到“结果”列中的值并不依赖于上面的每一行,这次可以使用下面简单的公式得到3: =MOD(INT($A$2/10^0),10) 沿着这个思路来构造上述方法的数组版本。...我们唯一需要确定的事情是执行计算的数组大小,即在指定进制下所需要的最大指数是多少? 在上面的示例中,显然需要的是“百”。因此,对于我们的10的指数需要由三个元素组:0、1和2组成的数组。...以本文开始时给出的示例为例,即将552转换为4进制数,其部分公式为: B2^(ROW(INDIRECT("1:20"))-1) 得到一个由20个值组成的数组,该数组由4的0至19次方的结果组成: {1;
公式中,使用: ROW(INDIRECT("1:"& LEN(B3))) 得到数组: {1;2;3;4;5;6;7;8;9} 其作为MID函数的参数: MID(B3,{1;2;3;4;5;6;7;8;9...将上述结果乘以1转换为数字,最后使用SUMPRODUCT函数求和。...也可以使用公式2: =SUMPRODUCT(MID(B3,ROW(OFFSET(A1,,,LEN(B3))),1)+0) 公式中,使用的是: ROW(OFFSET(A1,,,LEN(B3))) 得到数组...: {1;2;3;4;5;6;7;8;9} 加上0,将MID函数得到的数字文本转换为数字,让SUMPRODUCT函数对它们进行求和。...还可以使用公式3: =SUMPRODUCT(MID(B3,ROW(A1:INDEX(A:A,LEN(B3))),1)+0) 公式中,使用的是: ROW(A1:INDEX(A:A,LEN(B3))) 得到数组
,而不需要使用诸如VLOOKUP或INDEX/MATCH函数组合。...1转换为: =COUNT({#N/A;9;#N/A;6;#N/A;#N/A;2;#N/A;3;#N/A}) COUNT函数忽略传递给它的参数中的错误值,因此,公式1的结果为: 4 再看看更为健壮的公式2...(A3:A12,E3:E12,B3:B12,F3:F12,C3:C12,G3:G12)) 注意,当参数criteria指定的值包含多个元素时,在合理地强制转换(例如作用在COUNTIFS上的外部函数和数组公式...CSE输入)后,Excel将分别计算数组里的每个元素。...这样,公式2转换为: =SUM({0;1;1;0;0;1;0;0;1;0}) 结果为: 4
公式 在单元格D1中输入数组公式: =IF(ROWS($D$1:$D1)>SUM(last-first+1),"",SMALL(IF(first+TRANSPOSE(ROW(INDIRECT("1:"&...这样,就将上面的部分公式转换为: first+TRANSPOSE(ROW(INDIRECT("1:"&4))-1) 转换为: first+TRANSPOSE({1;2;3;4}-1) 得到: first...+{0,1,2,3} 这里是公式的关键技巧所在:首先生成一个单列数组,该数组由0至3(即数值范围的最大间隔)组成,然后将其转置为单行数组{0,1,2,3}。...公式中的比较部分为: IF(first+TRANSPOSE(ROW(INDIRECT("1:"&MAX(last-first)+1))-1)>--last,"" 转换为: IF({1,2,3,4;4,5,6,7...13,"",SMALL({1,2,"","";4,5,6,"";9,"","","";10,11,"","";13,14,15,16;21,"","",""}, 1)) 结果是: 1 对于单元格D2中的公式转换为
布隆过滤器的实现思路 3.布隆过滤器的公式 4.实际应用场景 ---- 1.布隆过滤器简介 布隆过滤器(Bloom Filter)是由一个很长的bit数组和一系列哈希函数组成的。...它的特点是高效地插入和查询,并且根据查询结果可以知道某样东西一定不存在或者可能存在。...3.布隆过滤器的公式 布隆过滤器的大小m公式,其中n为样本个数,p为误判率: 哈希函数的个数k公式: 布隆过滤器真实失误率p公式: 4.实际应用场景 背景:现在有个100亿个黑名单网页数据,每个网页的...bit数组呢?...设bit数组大小为m,样本数量为n,失误率为p。 由题可知 n = 100亿,p = 0.01% 根据布隆过滤器的大小m公式,求得 m = 19.19n,向上取整为 20n。
例如: 对字符串baidu进行布隆过滤, 经过3次hash, 分别对应存储数组3个位置. 在下次对字符串baidu过滤时, 只需要判断这3个索引位置是否值为1即可....K: 哈希函数个数 M: 位数组长度 N: 插入的元素个数 P: 误报率 但在实际应用中, 是先确定好可接受的误报率和要插入的数据个数后, 才确定合适的位数组长度M和hash函数的个数K; 最优策略可以参考如下公式...; K = (m/n) * Math.log(2); 算法实现 通过上述的误差计算公式,可以选取合适长度的位数组和Hash函数的个数....这时就可以使用布隆过滤器, 避免缓存穿透. 2. 爬虫网址去重 记录每个爬过的网址, 没有爬过的网址一定会被布隆过滤器过滤出来. 可能存在的网址再去数据源查询, 也会降低数据源压力. 3....黑名单 不在黑名单中数据, 会被布隆过滤器过滤出来, 可能存在的数据在去数据源中查询, 降低数据源压力.
INDEX函数虽然可以生成数组,但如果不用数组公式,似乎只能返回其生成的数组中的第一个元素。然而,可以使用INDEX函数来给公式提供数组。...})),N(IF(1,{1,2,3})))) 计算单元格A1、B4和C8的和,即: =SUM(A1, B4, C8) 此外,可以采取转置其中一个数组常量的标准技术来生成更多不同的结果: =SUM(INDEX...函数来生成的数组: =SUM(INDEX(A1:C10,N(IF(1,{1,2,3})),N(IF(1,{1;2;2;3})))) 得到的结果与下面的公式相同: =SUM(SUBTOTAL(9,OFFSET...不像OFFSET函数,其第一个参数必须是对工作表中实际单元格区域的引用,INDEX函数可以接受和处理其引用的数组,该数组由公式中其他函数生成的值组成。...,原因是Excel会将该公式转换为: =MAX(VLOOKUP("A",A1:B10,2,0)) 也就是说,传递给VLOOKUP函数的数组中的3个元素仅第1个元素被处理。
公式 在单元格C2中输入数组公式: =IF(ISNUMBER(MATCH(COLUMNS($C:C),IF(INDEX(MOD(INT((Arry2-1)/2^(TRANSPOSE(Arry1)-1))...图2 公式解析 公式中的Data、Arry1和Arry2是定义的三个名称。...9} 名称:Arry2 =ROW(INDIRECT("1:"& 2^COLUMNS(Data))) 转换为: =ROW(INDIRECT("1:" & 2^9)) 转换为: =ROW(INDIRECT(...公式中: TRANSPOSE(Data) 的结果为: TRANSPOSE({10,14,20,2,12,5,1,17,3}) 转置后得到: {10;14;20;2;12;5;1;17;3} 这样,公式中...此时单元格C2中的公式变为: =IF(ISNUMBER(MATCH(1,IF({1,0,1,0,1,1,0,0,0},TRANSPOSE(Arr1)),0)),”X”,””) 转换为: =IF(ISNUMBER
整体误判率为 图片,当 m 足够大时,误判率会越小,该公式约等于图片 我们会预估布隆过滤器的误判率 p 以及待插入的元素个数 n 分别推导出最合适的位数组长度 m 和 哈希函数个数 k。...▍ 时间和空间效率 布隆过滤器的空间复杂度为 O(m) ,插入和查询时间复杂度都是 O(k) 。 存储空间和插入、查询时间都不会随元素增加而增大。 空间、时间效率都很高。...BloomFilter filter = BloomFilter.create( //Funnel 是一个接口,用于将任意类型的对象转换为字节流, //以便用于布隆过滤器的哈希计算...return Math.max(1, (int) Math.round((double) m / n * Math.log(2))); } Guava 的计算位数组长度和哈希次数和原理解析这一节展示的公式保持一致...图片 定时任务触发全量商品查询 ; 将商品编号添加到新的布隆过滤器 ; 任务完成,修改商品布隆过滤器的映射(从旧 A 修改成 新 B ); 商品服务根据布隆过滤器的映射,选择新的布隆过滤器 B进行相关的查询操作
领取专属 10元无门槛券
手把手带您无忧上云