字符串: 1.广义后缀自动机(大小为\(m\))上跑一个长度为\(n\)的串,所有匹配位置及在\(parent\)树上其祖先的数量的和为\(min(n^2,m)\),单次最劣是\(O(m)\). 但是如果跑多个串,总长为\(n\),可以证明所有串长相等的时候复杂度更劣,设有\(k\)个串,那么复杂度为:\(O(k(n/k)^2)\),这个时候\(k=\frac{n}{\sqrt{m}}\)最劣,是\(O(n\sqrt{m})\) 2.反串\(parent\)树就是压缩节点后缀树. 3.后缀树可以…
通常来讲, 设计师们喜欢把banner设计成全屏(1920px或以上) 主题内容控制在一定的范围内一般在1200px左右 这样的设计即可以在宽屏上的表现很好.也能向下兼容一些小屏幕的设备: 如下图(所说的分辨率是实际的展示尺寸的宽度.请勿较真) 那么问题来了: 如果当分辨率小于1200. 拿bootstrap来说. 规定的几个响应尺寸为  小于768px  小于996px  小于1200px 大于1200px这4种尺寸 这时候该如何处理尺寸,比如当前浏览器宽度为1000px时,我们会发现主视觉区…
外向(E)+直觉(N)+情感(F)+知觉(P). 1. 设计:设计本身很能满足ENFP对工作的各种要求,但是有个附加条件就是,这份工作不能让ENFP长时间的一个人工作,没机会和别人交流,也就是说有一个好的团队环境:第二工作方式最好比较有自由度,没有很多时间地点还有截止日期的限制 2. 教育:ENFP天生喜欢人,并且喜欢帮助别人,尤其是帮助别人的成长,教育里面教学设计,教育技术,作为成人的教育者,教练,培训师,都是他们喜欢的工作.很多人说了不太喜欢体制内的教育环境,限制太多,行政工作太多,并且重复…
前言 在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分.如果你想获得更多职位,那么你应该准备很多关于多线程的问题. 他们会问面试者很多令人混淆的Java线程问题.面试官只是想确信面试者有足够的Java线程与并发方面的知识,因为候选人中有很多只浮于表面.现在引用Java5并发包关于并发工具和并发集合的问题正在增多.那些问题中ThreadLocal.Blocking Queue.Counting Semaphore和ConcurrentHashMap比较流行.     Java多线程…
什么是Linq表达式?什么是Lambda表达式? 如图: 由此可见Linq表达式和Lambda表达式并没有什么可比性. 那与Lambda表达式相关的整条语句称作什么呢?在微软并没有给出官方的命名,在<深入理解C#>中称为点标记. 查询表达式.点标记你更喜欢哪个? 所以,我们的标题的提问根本就不合适.应该是“查询表达式和点标记你更喜欢哪个?”.如: //查询表达式 var students1 = from t in db.Students where t.Name == "张三&quo…
PHPstorm默认的主题和可选的主题有时候不能满足有些人的需求,怎么配置自己喜欢的主题呢? 1.首先先去下载自己喜欢的主题:http://www.phpstorm-themes.com/ 但是在下载的时候会发现一个问题,在点击下载后,并没有下载,而是会打开这个文件(不同的浏览器不同) 能下载下来就好,但是如果出现上述情况,只需要将里面的内容全选,然后粘贴到一个后缀为.icls的文件中(新建个记事本,然后重命名) 2.将该文件复制到C:\Users\Administrator\.PhpStorm…
利用腾讯提供的QQ音乐API,返回一段对方在QQ音乐收藏的歌曲名称json数据,并对该json做解析,就能知道你的那个他或她喜欢听什么歌曲了,然后你就知道他/她的品位了,然后就自己看着办了,嘿嘿.我只能帮你到这了. 感谢bejson收集的各种有用的接口,他的网站http://www.bejson.com/webInterface.php.QQ音乐收藏歌曲的API是http://qzone-music.qq.com/fcg-bin/fcg_music_fav_getinfo.fcg?dirinfo…
让我写这篇博客主要前段时间dudu写了一篇关于Google Gmail年龄限制问题,导致博客园管理员Gmail账号会被删除,里面的邮件无法迁移出来.围观地址:http://www.cnblogs.com/dudu/p/3406282.html 说明:此处的Outlook不是我们电脑上的Outlook客户端,而是微软推出的在线邮件系统.地址是:http://www.outlook.com Google的大多数产品都是很优秀的,特别在技术人员眼中,Google的产品就是为了解放技术人员的.所以大多数…
在Windows下资源管理器查看内存使用的情况,如果使用率达到80%以上,再运行大程序就能感觉到系统不流畅了,因为在内存紧缺的情况下使用交换分区,频繁地从磁盘上换入换出页会极大地影响系统的性能.而当我们使用free命令查看Linux系统内存使用情况时,会发现内存使用一直处于较高的水平,即使此时系统并没有运行多少软件.这正是Windows和Linux在内存管理上的区别,乍一看,Linux系统吃掉我们的内存(Linux ate my ram),但其实这也正是其内存管理的特点. free命令介绍 下面…
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:就语言和运行时层面,C#做并发编程一点都不弱,缺的是生态和社区. 硅谷才女朱赟(我的家门)昨天发了一篇文章<为什么用 Java -- 关于并发编程>,让大家学习了Java中如何进行并发编程的一些基本知识.作为一个将近15年的.NET程序员,我觉得有必要给大家补充介绍一下C#进行并发编程的知识(当然不会太深入讲解).这篇文章无意进行技术比较,毕竟技术只是工具(大同小异,各有千秋),主…