算法练习-字符串
happy_bigqiang
这个作者很懒,什么都没留下…
展开
-
给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle字符串出现的第一个位置 (从0开始)StringStrStr28LeetCode
/** * 实现 strStr() 函数。 * 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle * 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 * Example 1: * Input: haystack = "hello", needle = "ll" * Output: 2 * Exampl...原创 2019-07-25 11:13:58 · 2913 阅读 · 3 评论 -
字符串相加Add Strings(给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。)
/** * @author LemonLin * @Description :StringAddStrings * @date 19.6.13-22:47 * Given two non-negative integers num1 and num2 represented as string, return the sum of num1 * and num2. * Note: *...原创 2019-06-17 21:50:12 · 1539 阅读 · 0 评论 -
最常见的单词MostCommonWord
import java.util.ArrayList;import java.util.Arrays;import java.util.Collection;import java.util.HashMap;/** * @author LemonLin * @Description :StringMostCommonWord * @date 19.6.10-22:14 * Giv...原创 2019-06-11 15:53:39 · 288 阅读 · 0 评论 -
字符串中的第一个唯一字符FirstUniqueCharacterInAString
import java.util.LinkedHashMap;/** * @author LemonLin * @Description :StringFirstUniqueCharacterInAString * @date 19.6.10-23:39 * Given a string, find the first non-repeating character in it and...原创 2019-06-11 10:28:07 · 294 阅读 · 0 评论 -
反转字符串中的元音字母Reverse Vowels of a String
import java.util.HashSet;/** * @author LemonLin * @Description :StringReverseVowelsofaString * @date 19.6.14-11:07 * Write a function that takes a string as input and reverse only the vowels of ...原创 2019-06-16 17:41:18 · 227 阅读 · 0 评论 -
最长公共前缀Longest Common Prefix
/** * @author LemonLin * @Description :StringLongestCommonPrefix * @date 19.6.10-16:06 * Write a function to find the longest common prefix string amongst an array of strings. * If there is no co...原创 2019-06-10 17:25:39 · 175 阅读 · 0 评论 -
字母异位词分组groupAnagrams
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * @author LemonLin * @Description :StringGroupAnagrams * @date 19.6.10-14:49 * Given an array...原创 2019-06-10 15:52:15 · 144 阅读 · 0 评论 -
统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。StringcountSegments434LeetCode
/** * @author LemonLin * @Description :StringcountSegments * @date 19.6.10-10:59 * Count the number of segments in a string, where a segment is defined to be a contiguous sequence * of non-space ...原创 2019-06-10 11:30:31 · 408 阅读 · 0 评论 -
重复的字符串RepeatedSubstringPattern
/** * @author LemonLin * @Description :StringRepeatedSubstringPattern * @date 2019/6/9-17:13 * Given a non-empty string check if it can be constructed by taking a substring of it and appending * ...原创 2019-06-10 10:58:52 · 218 阅读 · 0 评论 -
反转字符串
/** * 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 * 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 * 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 * 示例 1: * 输入:["h","e","l","l","o"] * 输出:["o","l","l","...原创 2019-06-25 17:27:51 · 278 阅读 · 0 评论 -
有效的字母异位词
import java.util.HashMap;/** * 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 * 示例 1: * 输入: s = "anagram", t = "nagaram" * 输出: true * 示例 2: * 输入: s = "rat", t = "car" * 输出: false * 说明: * 你可以...原创 2019-06-25 19:54:22 · 281 阅读 · 0 评论 -
仅仅反转字母Reverse Only Letters(给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。)
/** * @author LemonLin * @Description :StringReverseOnlyLetters * @date 19.6.17-23:04 * Given a string S, return the "reversed" string where all characters that are not a letter * stay in t...原创 2019-06-18 15:25:19 · 692 阅读 · 0 评论 -
StringMinimumWindowSubstring76LeetCode给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。
import java.util.HashMap;/** * 给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。 * 示例: * 输入: S = "ADOBECODEBANC", T = "ABC" * 输出: "BANC" * 说明: * 如果 S 中不存这样的子串,则返回空字符串 ""。 * 如果 S 中存在这样的子串,我们保证它是唯一...原创 2019-07-12 15:30:19 · 4643 阅读 · 0 评论 -
lengthOfLongestSubstring给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度
import java.util.LinkedList;/** * 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 * 示例 1: * 输入: "abcabcbb" * 输出: 3 * 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 * 示例 2: * 输入: "bbbbb" * 输出: 1 * 解释: 因为...原创 2019-07-10 11:43:32 · 806 阅读 · 0 评论 -
比较版本号
import javax.xml.stream.FactoryConfigurationError;/** * 比较两个版本号 version1 和 version2。 * 如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, ...原创 2019-06-24 21:13:19 · 1950 阅读 · 0 评论 -
longestPalindrome给定一个字符串 s,找到 s 中最长的回文子串。
/** * 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 * 示例 1: * 输入: "babad" * 输出: "bab" * 注意: "aba" 也是一个有效答案。 * 示例 2: * 输入: "cbbd" * 输出: "bb" * 思路:两种方法;暴力法: * 设置两个变量,变量i遍历字符串,变量j以i为中心,想左右...原创 2019-07-08 20:14:39 · 1313 阅读 · 0 评论 -
学生出勤记录 I(给定一个字符串来代表一个学生的出勤记录 … 如果一个学生的出勤记录中不超过一个'A'(缺勤)并且不超过两个连续的'L'(迟到),那么这个学生会被奖赏。)
/** * @author LemonLin * @Description :StringStudentAttendanceRecordI * @date 19.6.17-22:59 * You are given a string representing an attendance record for a student. The record only * contains th...原创 2019-06-18 17:20:42 · 1594 阅读 · 0 评论 -
给定一个只包含三种字符的字符串:( ,) 和 *,写一个函数来检验这个字符串是否为有效字符串StringValidParenthesisString678LeetCode
/** * @author LemonLin * @Description :StringValidParenthesisString * @date 19.6.17-23:45 * Given a string containing only three types of characters: '(', ')' and '*', write a function to * check...原创 2019-06-22 21:11:39 · 2860 阅读 · 2 评论 -
反转字符串 IIReverse String II(给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转。)
/** * @author LemonLin * @Description :StringReverseStringII * @date 19.6.17-22:47 * Given a string and an integer k, you need to reverse the first k characters for every 2k * characters counting...原创 2019-06-18 16:52:15 · 854 阅读 · 0 评论 -
唯一摩尔斯密码词
import java.util.HashSet;/** * 国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, * 比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。 * 为了方便,所有26个英文字母对应摩尔斯密码表如下: * [".-","-...","-.-.","-..",".",...原创 2019-06-22 20:32:04 · 378 阅读 · 0 评论 -
给定一个单词,你需要判断单词的大写使用是否正确。520LeetCode
/** * 给定一个单词,你需要判断单词的大写使用是否正确。我们定义,在以下情况时,单词的大写用法是正确的: * 全部字母都是大写,比如"USA"。 * 单词中所有字母都不是大写,比如"leetcode"。 * 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。 * 否则,我们定义这个单词没有正确使用大写字母。 * Given a word, yo...原创 2019-06-19 17:35:20 · 2257 阅读 · 0 评论 -
给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。
/** *给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0 * 和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。 * Give a string s, count the number of non-empty (contiguous) substrings that have the same * number of 0's...原创 2019-06-19 16:45:33 · 1619 阅读 · 0 评论 -
ValidPalindrome(回文字符串的判断)
/** * @author LemonLin * @Description :StringValidPalindrome * @date 2019/5/9-16:40 * * Given a string, determine if it is a palindrome, considering only alphanumeric characters and * ignoring c...原创 2019-05-09 21:10:34 · 362 阅读 · 0 评论 -
在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b
#include <stdio.h>#include <stdlib.h>#include <string.h>/*题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b解法:考虑用一个hash表记录每个字符出现的次数,然后顺序遍历字符串,同时判断hash值是否为1*/int main(){ char str[99]="abaccdeff";原创 2017-03-01 22:16:17 · 1326 阅读 · 1 评论 -
压缩字符串中的连续重复字符
题目:通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出现的重复字母进行压缩,并输出压缩后的字符串。 压缩规则: 1、仅压缩连续重复出现的字符。比如字符串”abcbc”由于无连续重复字符,压缩后的字符串还是”abcbc”。 2、压缩字段的格式为”字符重复的次数+字符”。例如:字符串”xxxyyyyyyz”压缩后就成为”3x6yz”。#include <s原创 2017-03-01 22:02:37 · 4452 阅读 · 0 评论 -
字符串空格的压缩:给定一个字符串,将其中连续出现的空格压缩为1个后,将其中已空格分隔的每个字符串逆序打印出来
#include <stdio.h>#include <stdlib.h>#include <string.h>/*题目:字符串空格的压缩:给定一个字符串,将其中连续出现的空格压缩为1个后,将其中已空格分隔的每个字符串逆序打印出来。 总体思想是用二维数组将每一被空格分隔的字符串拿出来; 之后用一个count记录空格个数即可,对空格个数为1的特殊处理;多余空格忽略即可*/void r原创 2017-03-01 21:02:23 · 2416 阅读 · 0 评论 -
字符串移动(字符串为’*’号和26个字母的任意组合, 把’*’号都移动到最左侧,把字母移到最右侧并保持相对顺序不变),要求时间和空间复杂度最小
#include <stdlib.h>#include <stdio.h>#include <string.h>/* 字符的左右移动 字符串移动(字符串为’*’号和26个字母的任意组合, 把’*’号都移动到最左侧,把字母移到最右侧并保持相对顺序不变),要求时间和空间复杂度最小.本解:用多开两个数组,分别保存*和字母*/int main(){ char str1[原创 2017-03-01 19:54:17 · 1029 阅读 · 0 评论 -
[网易]字符串回文分割
转载链接: http://blog.csdn.net/SunnyYoona/article/details/40376875【题目】 将一个很长的字符串,分割成一段一段的子字符串,子字符串都是回文字符串。有回文字符串就输出最长的,没有回文就输出一个一个的字符。 例如:habbafgh 输出h,abba,f,g,h。 【思路一】 基于“最长回文子串算法”求出当前字符串的最长回文子串,就可以转载 2017-03-01 16:20:10 · 304 阅读 · 0 评论 -
给定一个字符串,求它的最长回文子串的长度,并打印出最长回文子串
#include <stdio.h>#include <stdlib.h>#include <string.h>/*给定一个字符串,求它的最长回文子串的长度,并打印出最长回文子串*/int main(){ char str[99]="test"; gets(str); int strLength=strlen(str); int maxStr=0;原创 2017-03-01 15:58:22 · 4786 阅读 · 1 评论 -
ValidPalindromeII回文字符串二
/** * @author LemonLin * @Description :StringValidPalindromeII * @date 2019/5/9-21:30 * 题目描述: * Given a non-empty string s, you may delete at most one character. Judge whether you can make * it ...原创 2019-05-18 10:23:30 · 205 阅读 · 0 评论 -
StrToInt字符串转整型
/** * @author LemonLin * @Description :StrToInt49 * @date 2019/3/4-19:57 * * 题目描述 * 将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0), * 要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。...原创 2019-05-18 10:24:43 · 2553 阅读 · 0 评论 -
字符串反转句子StringReverseSentence
/** * @author LemonLin * @Description :ReverseSentence42_1 *翻转单词顺序列 * * 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。 * 同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。 * 例如,“student. a am I”。后来才意识到,这家伙...原创 2019-05-18 10:25:58 · 510 阅读 · 0 评论 -
实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串
/** * 实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换 * 成小写字母,之后返回新的字符串。 * 题目中文写在前面是为了博客预览的时候能够一眼看见,不要再调注释顺序了 * Implement function ToLowerCase() that has a string parameter str, and returns the...原创 2019-06-19 15:49:31 · 4445 阅读 · 0 评论 -
重复叠加字符串匹配repeatedStringMatch
/** * @author LemonLin * @Description :StringrepeatedStringMatch * @date 2019/6/9-11:26 * Given two strings A and B, find the minimum number of times A has to be repeated such that B is a * subst...原创 2019-06-09 16:10:55 · 233 阅读 · 0 评论 -
StringLengthofLastWord最后一个单词的长度
/** * @author LemonLin * @Description :StringLengthofLastWord * @date 2019/6/9-10:18 * Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the * length ...原创 2019-06-09 11:07:13 · 131 阅读 · 0 评论 -
StringBuddyStrings亲密字符串(交换一次字符,判断是否相等字符串)
import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;/** * @author LemonLin * @Description :StringBuddyStrings * @date 2019/6/5-22:25 * Given two strings A and B of low...原创 2019-06-09 10:15:29 · 633 阅读 · 0 评论 -
编写一个函数来验证输入的字符串是否是有效的 IPv4 或 IPv6 地址StringValidateIPAddress468LeetCode
/** * @author LemonLin * @Description :StringValidateIPAddress * @date 19.6.11-0:00 * Write a function to check whether an input string is a valid IPv4 address or IPv6 address or neither. * IPv4 ...原创 2019-06-13 19:34:49 · 4821 阅读 · 0 评论 -
有效的括号ValidParentheses
import java.util.Stack;/** * @author LemonLin * @Description :StringValidParentheses * @date 19.6.10-23:32 * Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determ...原创 2019-06-12 17:31:17 · 127 阅读 · 0 评论 -
压缩字符串StringCompression
/** * @author LemonLin * @Description :StringStringCompression * @date 19.6.10-22:59 * Given an array of characters, compress it in-place. * The length after compression must always be smaller th...原创 2019-06-12 17:00:13 · 274 阅读 · 0 评论 -
字符串二进制求和Add Binary
/** * @author LemonLin * @Description :StringaddBinary * @date 2019/6/2-21:41 * * 题目:Given two binary strings, return their sum (also a binary string). * The input strings are both non-empty and...原创 2019-06-05 20:50:47 · 160 阅读 · 0 评论