March 18, 2016 Problem statement: https://www.hackerrank.com/challenges/two-strings/submissions/code/18506948 Julia likes to try a new way to train herself to expand C#/ C++ / Java / JavaScript languages, by reading the solutions, followed up with so…
原题链接: Kingdom Division 由于树的层次可能很深,所以这里不能使用递归版的DFS.我使用了BFS. BFS确定各结点的父结点和它的孩子数. 用逆拓扑排序确定结点的计算顺序. same[u][] 表示u结点颜色为0孩子结点颜色全为1时组合数. diff[u][] 表示u结点颜色为0时可行组合数.本结点颜色为0,子结点颜色为1,孙结点颜色全为0是无效组合.反之亦然.由于这里颜色0.1相互对称, same[u][]=same[u][]; diff[u][]=diff[u][]; .…
目录 strings包实现了用于操作字符的简单函数. func EqualFold 判断两个utf-8编码字符串(将unicode大写.小写.标题三种格式字符视为相同)是否相同. func EqualFold(s, t string) bool 示例: func main() { str1 := "Golang" str2 := "golang" fmt.Println(strings.EqualFold(str1, str2)) //输出: true } HasP…
https://www.simple-talk.com/sql/t-sql-programming/consuming-json-strings-in-sql-server/ Consuming JSON Strings in SQL Server 15 November 2010 by Phil Factor   Updated 2nd May 2013 Updated 8th  May 2014 It has always seemed strange to Phil that SQL Se…
Machine Learning for Developers Most developers these days have heard of machine learning, but when trying to find an 'easy' way into this technique, most people find themselves getting scared off by the abstractness of the concept of Machine Learnin…
摘要: 理解函数式编程. 作者:前端小智 原文:JS中函数式编程基本原理简介 Fundebug经授权转载,版权归原作者所有. 在长时间学习和使用面向对象编程之后,咱们退一步来考虑系统复杂性. 在做了一些研究之后,我发现了函数式编程的概念,比如不变性和纯函数.这些概念使你能够构建无副作用的函数,因此更容易维护具有其他优点的系统. 在这篇文章中,将通大量代码示例来详细介绍函数式编程和一些相关重要概念. 什么是函数式编程 函数式编程是一种编程范式,是一种构建计算机程序结构和元素的风格,它把计算看作是对…
什么是并查集?并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题. 并查集的主要操作1.合并两个不相交集合2.判断两个元素是否属于同一集合 主要操作的解释及代码一开始我们假设元素都是分别属于一个独立的集合里的.(1).合并两个不相交集合 操作很简单:先设置一个数组Father[x],表示x的"父亲"的编号. 那么,合并两个不相交集合的方法就是,找到其中一个集合最父亲的父亲(也就是最久远的祖先),将另外一个集合的最久远的祖先的父亲指向它. 上…
引用罗穗骞论文中的话: 先将n 个字符串连起来,中间用不相同的且没有出现在字符串中的字符隔开,求后缀数组.然后二分答案,再将后缀分组.判断的时候,要看是否有一组后缀在每个原来的字符串中至少出现两次,并且在每个原来的字符串中,后缀的起始位置的最大值与最小值之差是否不小于当前答案(判断能否做到不重叠,如果题目中没有不重叠的要求,那么不用做此判断).这个做法的时间复杂度为O(nlogn). 二分枚举长度,对每个长度遍历height[]数组,将height[]数组分块,每个块内任意两串的lcp均大于等于…
Using the string concatenation operator repeatedly to concatenate n strings requires time quadratic in n. It's an unfortunate consequence of fact that strings are immutable(Item 15). // Inappropriate use of string concatenation - Performs horribly! p…
DNA Laboratory Time Limit: 5000MS   Memory Limit: 30000K Total Submissions: 1425   Accepted: 280 Description Background Having started to build his own DNA lab just recently, the evil doctor Frankenstein is not quite up to date yet. He wants to extra…