二值图像我们在图像处理过程中是经常遇到的,有的时候我们在进行一个算法处理前,需要判断下一副图像的数据是否符合二值图的需求,这个时候我们可以写个简单的函数来做个判断,比如我写了一个很简单的的代码如下: bool IM_IsBinaryImage_C(unsigned char *Src, int Width, int Height, int Stride) { int Channel = Stride / Width; if (Src == NULL) return false; ) || (He…
大家好,我是小富~ 最近发现点好玩的工具,迫不及待的想跟大家分享一下. 大家平时都怎么查Linux日志呢? 像我平时会用tail.head.cat.sed.more.less这些经典系统命令,或者awk这类三方数据过滤工具,配合起来查询效率很高.但在使用过程中有一点让我比较头疼,那就是命令参数规则太多了,记的人脑壳疼. 那查日志有没有一种通用的方式,比如用SQL查询,毕竟这是程序员都比较熟悉的表达式. 今天分享的工具q,就实现了以写SQL的方式来查询.统计文本内容,一起看看这货到底有什么神奇之处…
if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))){ //ie10以上 }; 快速判断ie10及以上版本浏览器…
<?php /*文件扩展名说明 *7173 gif *255216 jpg *13780 png *6677 bmp *239187 txt,aspx,asp,sql *208207 xls.doc.ppt *6063 xml *6033 htm,html *4742 js *8075 xlsx,zip,pptx,mmap,zip *8297 rar *01 accdb,mdb *7790 exe,dll *5666 psd *255254 rdp *10056 bt种子 *64101 bat…
这里是JS的正则的一点心得,并不是最完整的规则汇总,更侧重实际运用中的快速判断,初学者接触正则之后往往会被一堆星号括号给弄晕,有了一些速判技巧就能从整体上把握从而不慌乱. JS正则快速判断技巧的核心就是:注意圆括号和问号.这已经能够应付大部分实际应用了. 一.圆括号 众所周知,正则中中括号表示范围,大括号表示重复次数,圆括号表示分组. 圆括号表示分组,但是分组内还有很多文章,细分一下:       (1):圆括号本身表示分组,同时会保存匹配的项,这叫捕获性分组,默认都是这样的,比如:      …
腾讯面试题:给40亿个不重复的unsigned int的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那40亿个数当中?  这个题目已经有一段时间了,但是腾讯现在还在用来面试.腾讯第一次面试的时候我听面试官问其他人了.我不是故意的...     方案1:申请512M的内存,一个bit位代表一个unsigned int值.读入40亿个数,设置相应的bit位,读入要查询的数,查看相应bit位是否为1,为1表示存在,为0表示不存在.     方案2: 因为2^32为40亿多,所以给定一个数…
一.需求: 知道某段范围0x0020~0x007F0x00A0~0x017F0x01A0~0x01CF0x01F0~0x01FF0x0210~0x021F0x1EA0~0x1EFF给定一个值,快速判断给定值是否在以上编码范围内 二.解决方案 用面向对象的方案解决 1.每个段都有一个最小值,一个最大值,定义一个类 public Section(int minValue, int maxValue) { this.MinValue = minValue; this.MaxValue = maxVal…
给出一个64位的大数,如何快速判断其是否为素数 #include<algorithm> #include<cstdio> #include<cstring> #include<cmath> using namespace std; typedef long long LL; LL n,m; //**************************************************************** // Miller_Rabin 算法…
vue中filter的使用 computed: mapState({ items: state => state.items.filter(function (value, index, arr) { }) }), 如上所示,对于vuex,我们在使用mapState获取state时, 可以使用filter来过滤其中的元素,在filter的回调函数中接受三个参数,第一个是value,即每一个元素的值: 第二个是index, 即每一个元素所在的index, 第三个参数是arr,即这个数组本身. 在上…
题目描述 一个网站有 100 亿 url 存在一个黑名单中,每条 url 平均 64 字节.这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中? 题目解析 这是一道经常在面试中出现的算法题.凭借着题目极其容易描述,电面的时候也出现过. 不考虑细节的话,此题就是一个简单的查找问题.对于查找问题而言,使用散列表来处理往往是一种效率比较高的方案. 但是,如果你在面试中回答使用散列表,接下来面试官肯定会问你:然后呢?如果你不能回答个所以然,面试官就会面无表情的通…
这属于算法上的问题,好好考虑一下算法,还要考虑一下素数的定义. 素数是只有1和本身能整除的整数.所以在求素数的时候,要将素数与1到素数本身中间的所有整数都相除,看是否有整除的数,如果有,那肯定不是素数了.但是从算法上考虑,为了减少重复量,开平方后面的数就不用相除了,因为a/b(平方数)=c(小一点的数),同样a/c=b.举例说明: 25,开平方以后是5,那么整除2~5就可以了,如果有满足条件的,就是素数. 这样做可以减少循环次数,素数是因子为1和本身, 如果数c不是素数,则还有其他因子,其中的因…
假设遇到这样一个问题:一个网站有 20 亿 url 存在一个黑名单中,这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中?并且需在给定内存空间(比如:500M)内快速判断出. 可能很多人首先想到的会是使用 HashSet,因为 HashSet基于 HashMap,理论上时间复杂度为:O(1).达到了快速的目的,但是空间复杂度呢? 这里就引出本文要介绍的"布隆过滤器". 何为布隆过滤器 百科上对布隆过滤器的介绍是这样的: 布隆过滤器(Bloom…
何为布隆过滤器 还是以上面的例子为例: 判断逻辑: 多次哈希: Guava的BloomFilter 创建BloomFilter 最终还是调用: 使用: 算法特点 使用场景 假设遇到这样一个问题:一个网站有 20 亿 url 存在一个黑名单中,这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中?并且需在给定内存空间(比如:500M)内快速判断出. 可能很多人首先想到的会是使用 HashSet,因为 HashSet基于 HashMap,理论上时间复杂度为:O…
利用vim查看日志,快速定位问题 链接:https://www.cnblogs.com/abcwt112/p/5192944.html…
C#中??和?分别是什么意思? 在C#中??和?分别是什么意思? 1. 可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.例如:string str=null; 是正确的,int i=null; 编译器就会报错.为了使值类型也可为空,就可以使用可空类型,即用可空类型修饰符"?"来表示,表现形式为"T?"例如:int? 表示可空的整形,DateTime? 表示可为空的时间.T? 其实是System.Nullable(泛型结构)的…
定义 log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等:我们也可以控制每一条日志的输出格式:通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程.最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码. 一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.D…
在正常的加载过程中,js文件的加载是同步的,也就是说在js加载的过程中,浏览器会阻塞接下来的内容的解析.这时候,动态加载便显得尤为重要了,由于它是异步加载,因此,它可以在后台自动下载,并不会妨碍其它内容的正常解析,由此,便可以提高页面首次加载的速度. 那么,既然js是异步加载,我们又该如何判断它是否加载完成呢? 在IE或一些基于IE内核的浏览器中(如Maxthon),它是通过script节点的readystatechange方法来判断的,而其它的一些浏览器中,往往是通过load事件来决定的,如下…
一.nand启动和nor启动:[1] CPU从0x00000000位置开始运行程序. 1.nand启动: 如果将S3C2440配置成从NANDFLASH启动(将开发板的启动开关拔到nand端,此时OM0管脚拉低)S3C2440的Nand控制器会自动把Nandflash中的前4K代码数据搬到内部SRAM中(地址为0x40000000),同时还把这块SRAM地址映射到了0x00000000地址.CPU从0x00000000位置开始运行程序. 2.如果将S3C2440配置成从Norflash启动(将开…
为了监控升级的过程,你应该查看 application log 日志中的输出. 通常日志经常将会显示多个日志实例,这个实例是定义在日志的 INFO 级别的,通常格式如下: WikiToXhtmlMigrationThread-n - Migrated 2500 of 158432 pages, this batch migrated 500/500 without error 针对每一个独立的页面,可能会显示很多日志的消息,但是任何错误将会显示一个独立合并日志,一旦所有的内容都被处理完成后.下面…
当你插入几百万数据时,由于有几条脏数据而导致插入失败,是不是很恼火.10g R2之后有个新功能.将插入过程中失败的记录插入到还有一张表中. SQL> drop table test purge; SQL> drop table test_bad purge; SQL> create table test as select * from dba_objects where 1<>1; SQL> execute dbms_errlog.create_error_log('…
Windows平台下Oracle实例启动过程中日志输出记录. 路径:D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log 输出内容: Sat Aug :: Starting ORACLE instance (normal) LICENSE_MAX_SESSION = LICENSE_SESSIONS_WARNING = Picked latch- Using LOG_ARCHIVE_DEST_1 parameter defa…
Windows平台下Oracle监听服务启动过程中日志输出记录. 日志目录:D:\app\Administrator\diag\tnslsnr\WIN-RU03CB21QGA\listener\trace\listener.log 日志输出内容: Sat Aug :: 系统参数文件为D:\app\Administrator\product\\dbhome_1\network\admin\listener.ora 写入d:\app\administrator\diag\tnslsnr\WIN-RU…
Oracle物化视图的快速刷新机制是通过物化视图日志完成的.Oracle如何通过一个物化视图日志就可以支持多个物化视图的快速刷新呢,本文简单的描述一下刷新的原理. 首先,看一下物化视图的结构:SQL> create table t(id number, name varchar2(30), num number);表已创建. SQL> create materialized view log on t with rowid, sequence(id, name) including new v…
起因 在一般的情况下,如果开发过程中测试报告了一个问题,我一般会这么做: 1.在自己的开发环境下重试一下测试的操作,看看能不能重现问题.不行转2 2.数据库连接池改成测试库的地址,在自己的开发环境下重试一下测试的操作,看看能不能重现问题.不行转3 3.去测试环境查看日志.分析问题. 快速定位问题 去测试环境查看日志,分析问题的时候.因为我Linux命令也不是很熟悉.所以查看日志内容比较累..我以前的做法是下载日志以后在windows环境下利用文本编辑器定位问题. 但是有时候日志比较大,有几百MB…
以前我在判断素数上一直只会 sqrt(n) 复杂度的方法和所谓的试除法(预处理出sqrt(n)以内的素数,再用它们来除). (当然筛选法对于判断一个数是否是素数复杂度太高) 现在我发现其实还有一种方法叫做费马小定理. 有关请见 http://baike.baidu.com/link?url=1BurQrmJP3j9QiD4OnA2X3TAbSSCPvTgbaqbo6qSQPVSuXLjVe-lL2SNi6N5wblwJFrIJs41pmDbCZ6z9je4h_ 代码如下: llg ch(llg…
G - A Bug's Life Time Limit:10000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 2492 Appoint description: Description BackgroundProfessor Hopper is researching the sexual behavior of a rare species of bugs. H…
以前我个人的观念是,在线上运行的东西尽量不要记什么流水日志. 但是后来我变了,发现在线上记日志是一个绝对有必要的东西,尤其是在当下很流行的微服务的推动下,没有日志的帮助,犹如一个睁眼瞎,排查问题基本靠猜,这可不行. 那就打印记录每次的访问日志,尤其是访问接口时的参数及返回数据和耗费时间等,这是对自己将问题抛给上层及性能优化的依据.但是日志量应该是非常大的,一定要注意及时清理. 那么问题来了,当发现问题时,如何快速定位到错误的地方就很重要了. 日志样例如下(某次访问的产生的日志): [-- ::]…
给出两个图,问你是不是同构的... 直接通过并查集建图,暴力用SET判断下子节点个数就行了. /** @Date : 2017-09-22 16:13:42 * @FileName: HDU 3926 并查集 图同构 连通分量.cpp * @Platform: Windows * @Author : Lweleth (SoungEarlf@gmail.com) * @Link : https://github.com/ * @Version : $Id$ */ #include <bits/st…
有两个区间A[a1,b1], B[a2,b2],判断这两个区间有没有交集.我们可以分为两种思维来判断: /** *思路就是如果两个区间不相交,那么最大的开始端一定大于最小的结束端 **/ if(max(a1, a2) < min(b1, b2)){ return "有交集" }else{ return "无交集" } 给你两个区间[a, b]和[c, d],如果让你求出这两个区间的相交长度,你会怎么做呢? 不出意外的话,大多数同学就会进行分类讨论,看看那个区间…
蛋疼的比赛,当天忘了做了,做的模拟,太久没怎么做题了,然后C题这么简单的思路却一直卡到死,期间看了下D然后随便猜了下,暴力了下就过了. A.找一个能被t整除的n位数,那么除了<=10以外,其他都可以用长度为n的10或100,1000 ... 来往上加几个数而得到 #include <iostream> #include <stdio.h> #include <set> #include <algorithm> #include <string.h…