字符串
小马哥MAX
刷题记录BLOG
展开
-
【两次过】Leetcode 6: Z 字形变换
将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为"LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示例1:输入:...原创 2020-07-10 09:52:17 · 121 阅读 · 0 评论 -
【一次过】Leetcode 38. 外观数列
给定一个正整数 n(1 ≤n≤ 30),输出外观数列的第 n 项。注意:整数序列中的每一项将表示为一个字符串。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下:1. 12. 113. 214. 12115. 111221第一项是数字 1描述前一项,这个数是 1 即 “一个 1 ”,记作 11描述前一项,这个数是 11 即 “两个 1 ” ,记作 21描述前一项,这个数是 21 即 “一个 ...原创 2020-07-04 20:09:40 · 268 阅读 · 0 评论 -
【两次过】Lintcode 13: 字符串查找
For a given source string and a target string, you should output thefirstindex(from 0) of target string in source string.If target does not exist in source, just return-1.ClarificationDo I...原创 2018-01-18 21:02:24 · 252 阅读 · 0 评论 -
【一次过】Lintcode 8:旋转字符串
Given a string and an offset, rotate string by offset. (rotate from left to right)Have you met this question in a real interview?YesExampleGiven"abcdefg".offset=0 => "abcdefg"offset...原创 2018-01-17 16:27:20 · 293 阅读 · 0 评论 -
【一次过】Lintcode 1369. 最频繁单词
给定一个段落和一组限定词,返回最频繁的非限定单词。已知至少有一个单词是非限定的,并且答案唯一。限定词都是以小写字母给出,段落中的单词大小写不敏感。结果请返回小写字母。样例输入:paragraph = "Bob hit a ball, the hit BALL flew far after it was hit."banned = ["hit"]输出:"ball"解释:"h...原创 2018-12-04 14:15:49 · 375 阅读 · 0 评论 -
【一次过】Lintcode 78. 最长公共前缀
给k个字符串,求出他们的最长公共前缀(LCP)样例在 "ABCD" "ABEF" 和 "ACEF" 中, LCP 为 "A"在"ABCDEFG", "ABCEFG", "ABCEFA" 中, LCP 为 "ABC"解题思路1:两两比较得出临时前缀结果,再用这个结果去比较下一个字符串得出又一个前缀结果,直到比较完所有字符串,这个前缀结果即为最终结果。public cla...原创 2018-07-21 10:04:32 · 189 阅读 · 0 评论 -
【两次过】Lintcode 128. 哈希函数
在数据结构中,哈希函数是用来将一个字符串(或任何其他类型)转化为小于哈希表大小且大于等于零的整数。一个好的哈希函数可以尽可能少地产生冲突。一种广泛使用的哈希函数算法是使用数值33,假设任何字符串都是基于33的一个大整数,比如:hashcode("abcd") = (ascii(a) * 333+ascii(b) * 332+ascii(c) *33 +ascii(d)) %HASH...原创 2018-08-09 20:33:17 · 125 阅读 · 0 评论 -
【两次过】Lintcode 79. 最长公共子串
给出两个字符串,找到最长公共子串,并返回其长度。样例样例 1: 输入: "ABCD" and "CBCE" 输出: 2 解释: 最长公共子串是 "BC"样例 2: 输入: "ABCD" and "EACB" 输出: 1 解释: 最长公共子串是 'A' 或 'C' 或 'B'挑战O(n x m) time and memory.注意...原创 2019-04-02 09:37:17 · 161 阅读 · 0 评论 -
【一次过】Lintcode 379. 将数组重新排序以构造最小值
给定一个整数数组,请将其重新排序,以构造最小值。样例样例 1:输入:[2, 1]输出:[1, 2]解释:通过将数组重新排序,可构造 2 个可能性数字: 1+2=12 2+1=21其中,最小值为 12,所以,将数组重新排序后,该数组变为 [1, 2]。样例 2:输入:[3, 32, 321]输出:[321, 32, 3]...原创 2019-07-14 11:29:19 · 220 阅读 · 0 评论 -
【两次过】【2018唯品会】字符串组合
输入一个字符串,输出该字符串中相邻字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、bc、abc。(注意:输出的组合需要去重)(40分)输入描述:一个字符串输出描述:一行,每个组合以空格分隔,相同长度的组合需要以字典序排序,且去重。示例1输入bac输出a b c ac ba bac解题思路1:类似Lintcode 17. 子...原创 2019-05-30 21:10:35 · 146 阅读 · 0 评论 -
【一次过】Lintcode 213:字符串压缩
设计一种方法,通过给重复字符计数来进行基本的字符串压缩。例如,字符串aabcccccaaa可压缩为a2b1c5a3。而如果压缩后的字符数不小于原始的字符数,则返回原始的字符串。可以假设字符串仅包括a-z的字母。样例str=aabcccccaaa返回a2b1c5a3str=aabbcc返回aabbccstr=aaaa返回a4解题思路:那么双指针...原创 2018-06-11 21:29:56 · 497 阅读 · 0 评论 -
【一次过】Lintcode 637. 检查缩写字
给定一个非空字符串word和缩写abbr,返回字符串是否可以和给定的缩写匹配。比如一个“word”的字符串仅包含以下有效缩写:["word", "1ord", "w1rd", "wo1d", "wor1", "2rd", "w2d", "wo2", "1o1d", "1or1", "w1r1", "1o2", "2r1", "3d", "w3", "4"]样例样例 1:...原创 2018-06-26 09:45:18 · 1322 阅读 · 0 评论 -
【一次过】左旋转字符串
题目描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!解题思路:三次旋转。先旋转需要左移的字符串,然后旋转其他字符串,最后将两旋转后的字符串拼接...原创 2019-05-07 08:58:24 · 145 阅读 · 0 评论 -
【简单】Lintcode 53. 翻转字符串中的单词
给定一个字符串,逐个翻转字符串中的每个单词。说明单词的构成:无空格字母构成一个单词 输入字符串是否包括前导或者尾随空格?可以包括,但是反转后的字符不能包括 如何处理两个单词间的多个空格?在反转字符串中间空格减少到只含一个解题思路1:1、先翻转整个字符串,再把每个单词反转,得到结果。class Solution {public: /* * @para...原创 2018-01-29 22:28:09 · 396 阅读 · 0 评论 -
【两次过】Lintcode 1270:勒索信
给定一个任意的表示勒索信内容的字符串,和另一个字符串表示杂志的内容,写一个方法判断能否通过剪下杂志中的内容来构造出这封勒索信,若可以,返回 true;否则返回 false。杂志字符串中的每一个字符仅能在勒索信中使用一次。样例样例 1输入 : ransomNote = "aa", magazine = "aab"输出 : true解析 : 勒索信的内容可以有杂志内容剪辑而来...原创 2018-06-08 10:20:15 · 182 阅读 · 0 评论 -
【一次过】交错01串
题目描述如果一个01串任意两个相邻位置的字符都是不一样的,我们就叫这个01串为交错01串。例如: "1","10101","0101010"都是交错01串。小易现在有一个01串s,小易想找出一个最长的连续子串,并且这个子串是一个交错01串。小易需要你帮帮忙求出最长的这样的子串的长度是多少。输入描述:输入包括字符串s,s的长度length(1 ≤ length ≤ 50),字符串中只...原创 2019-05-15 09:37:18 · 214 阅读 · 0 评论 -
【两次过】【2018招行】字符串是否由子串拼接
给出一个非空的字符串,判断这个字符串是否是由它的一个子串进行多次首尾拼接构成的。例如,"abcabcabc"满足条件,因为它是由"abc"首尾拼接而成的,而"abcab"则不满足条件。输入描述:非空字符串输出描述:如果字符串满足上述条件,则输出最长的满足条件的的子串;如果不满足条件,则输出false。示例1输入abcabc输出abc解题思路:...原创 2019-05-15 21:08:01 · 263 阅读 · 0 评论 -
【三次过】【2018招行】寻找合法字符串
给出一个正整数n,请给出所有的包含n个'('和n个')'的字符串,使得'('和')'可以完全匹配。例如:'(())()','()()()' 都是合法的;'())()('是不合法的。请按照__字典序__给出所有合法的字符串。输入描述:输入为1个正整数输出描述:输出为所有合法的字符串,用英文逗号隔开示例1输入2输出(()),()()解...原创 2019-05-16 09:42:17 · 510 阅读 · 0 评论 -
【三次过】【2018爱奇艺】DNA序列
题目描述牛牛又从生物科研工作者那里获得一个任务,这次牛牛需要帮助科研工作者从DNA序列s中找出最短没有出现在DNA序列s中的DNA片段的长度。例如:s = AGGTCTA序列中包含了所有长度为1的('A','C','G','T')片段,但是长度为2的没有全部包含,例如序列中不包含"AA",所以输出2。输入描述:输入包括一个字符串s,字符串长度length(1 ≤ length ≤...原创 2019-05-16 10:39:00 · 271 阅读 · 0 评论 -
【两次过】Lintcode 212:空格替换
设计一种方法,将一个字符串中的所有空格替换成%20。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。你的程序还需要返回被替换后的字符串的长度。样例对于字符串"Mr John Smith", 长度为13替换空格之后,参数中的字符串需要变为"Mr%20John%20Smith",并且把新长度17作为结果返回。挑战在原字符串(字符数组...原创 2018-06-11 20:15:46 · 285 阅读 · 0 评论 -
【一次过】把字符串转换成整数
题目描述将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。输入描述:输入一个字符串,包括数字字母符号,可以为空输出描述:如果是合法的数值表达则返回该数字,否则返回0示例1输入+2147483647...原创 2019-05-08 09:37:58 · 236 阅读 · 0 评论