题目链接:https://vjudge.net/problem/POJ-1056 题意:给定一个字符串集,判断是否存在一个字符串是另一个字符串的前缀. 思路:和hdoj1671一样,有两种情况: 当前长度处已经存在字符串.比如先插入10,再插入101. 最后一个字符后面还有子结点.比如先插入101,再插入10. AC code: #include<cstdio> #include<algorithm> #include<cstring> using namespace…
Given a string, find the length of the longest substring T that contains at most k distinct characters. For example, Given s = “eceba” and k = 2, T is "ece" which its length is 3. 题意: 给定字符串,求至多包含K种字符的最长子串 思路: 跟[leetcode]159. Longest Substring wi…
Given a string, find the length of the longest substring T that contains at most k distinct characters. For example, Given s = “eceba” and k = 2, T is "ece" which its length is 3. 159. Longest Substring with At Most Two Distinct Characters 的拓展,1…
Given a string S, find the length of the longest substring T that contains at most two distinct characters.For example,Given S = “eceba”,T is “ece” which its length is 3. 这道题给我们一个字符串,让我们求最多有两个不同字符的最长子串.那么我们首先想到的是用哈希表来做,哈希表记录每个字符的出现次数,然后如果哈希表中的映射数量超过两…
#coding=utf- #字典嵌套牛逼,别人写的,这样每一层非常多的东西,搜索就快了,树高26.所以整体搜索一个不关多大的单词表 #还是O(). ''' Python 字典 setdefault() 函数和get() 方法类似, 如果键不存在于字典中,将会添加键并将值设为默认值. 说清楚就是:如果这个键存在字典中,那么这句话就不起作用,否则就添加字典里面这个key的取值为后面的默认值. 简化了字典计数的代码.并且这个函数的返回值是做完这些事情之后这个key的value值. dict.setde…
还在用keys命令模糊匹配删除数据吗?这就是一颗随时爆炸的炸弹! Redis中没有批量删除特定前缀key的指令,但我们往往需要根据前缀来删除,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案 redis-cli --raw keys "ops-coffee-*" | xargs redis-cli del 直接在linux下通过redis的keys命令匹配到所有的key,然后调用系统命令xargs来删除,看似非常完美,实则风险巨大 因为Redis的单线程服务模式,命令keys会阻塞…
Given a string s , find the length of the longest substring t  that contains at most 2 distinct characters. Example 1: Input: "eceba" Output: 3 Explanation: tis "ece" which its length is 3. Example 2: Input: "ccaabbb" Output:…
      如何优雅地删除Redis set集合中前缀相同的key?       Redis中有删除单条数据的命令DEL,却没有批量删除特定前缀key的指令,但我们经常遇到需要根据前缀来删除的业务场景,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案: redis-cli --raw keys "prefix-*" | xargs redis-cli del 直接在linux下通过redis的keys命令匹配到所有的key,然后调用系统命令xargs来删除,看似十全十美,实则风险巨…
如果说: 给定一个号码与通配符问号W,问号代表一个随机数字. 给定的整数,得到X,和W它具有相同的长度. 问:多少整数协议W的形式和的比率X大? 进格公式 数据的多组,两排各数据的,W,第二行是X.它们长度同样.在[1..10]之间. 输出格式 每行一个整数表示结果. 答题说明 输入例子 36? 1? 8 236428 8? 3 910 ? 5 输出例子 100 0 4 分析例如以下: 先用穷举法来分析几种可能情况 1. 36?1? 8 236428 假设W第一个通配符之前的数字大于X,则通通配…
[抄题]: 给定一个字符串,找到最多有k个不同字符的最长子字符串.eg:eceba, k = 3, return eceb [暴力解法]: 时间分析: 空间分析: [思维问题]: 怎么想到两根指针的:从双层for循环的优化 开始分析 [一句话思路]: [输入量]:空: 正常情况:特大:特小:程序里处理到的特殊情况:异常情况(不合法不合理的输入): [画图]: [一刷]: 没有养成好习惯:退出条件写在添加条件之前.因此先判断if (map.size() == k),再map.put(c,1) [二…