面试相关算法--字符串
沙漠一只雕得儿得儿
沙漠一只雕,白月光与朱砂痣
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
判断两个字符串是否是同分异构字符串
package 字符串;/** * 判断两个字符串是否是同分异构字符串 * 利用两个数组 * @author buder_cp * */public class validAnagram { public static boolean isValidAnagram (String s, String t) { if (s.length() != t.length()) {原创 2016-11-18 10:38:22 · 1544 阅读 · 0 评论 -
模式匹配
package 字符串下;/** * 暴力解决返回第一次匹配的字符串位置 * @author buder_cp * */public class 模式匹配 { public static int strStr(String haystack, String needle) { int m = haystack.length(); int n = needle.length()原创 2016-11-18 19:52:52 · 551 阅读 · 0 评论 -
判断回文数字
import java.util.Scanner;public class 回文串数字 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); System.out.println(isPalindrome(a)); } pub原创 2017-05-17 11:32:43 · 506 阅读 · 0 评论 -
回文判断
算法1:暴力解法,枚举所有子串,对每个子串判断是否为回文,复杂度为O(n^3)import java.util.Scanner;/** * 最长回文子串,暴力解决,找到字符串中的每一个子串,记录下来其中最长的 * @author buder_cp * */public class 最长回文子串暴力 { public static boolean isPanlidrome(Stri原创 2017-05-17 16:00:08 · 574 阅读 · 0 评论 -
和为s的两个数字
输入一个递增排序的数组和一个数字 s,在数组中查找两个数,得它们的和正好是 s。如果有多对数字的和等于 s,输出任意一对即可。解题思路:我们先在数组中选择两个数字,如果它们的和等于输入的 s,我们就找到了要找的两个数字。如果和小于 s 呢?我们希望两个数字的和再大一点。由于数组已经排好序了,我们可以考虑选择较小的数字后面的数字。因为排在后面的数字要大一些,那么两个数字的和也要大一些, 就有原创 2017-05-17 16:23:50 · 361 阅读 · 0 评论 -
和为 s 的连续正整数序列
import java.util.Scanner;public class 和为S的连续正整数序列 { public static void main(String[] agrs){ Scanner sc = new Scanner(System.in); int s = sc.nextInt(); int start = 1; int end = 2; int s原创 2017-05-17 17:13:40 · 315 阅读 · 0 评论 -
删除排序数组中的重复元素
方法一:利用临时变量过程如图所示:public class 删除数组中的重复元素 { public static void main(String[] args) { int[] arr = { 1, 2, 2, 2, 3, 3, 4, 4, 5, 6, 7, 7, 7, 7, 8 }; /** * 利用临时变量, */ int temp = arr[0原创 2017-05-18 10:17:28 · 709 阅读 · 0 评论 -
拼接字符串数组使字典序最小
对于一个给定的字符串数组,请找到一种拼接顺序,使所有小字符串拼接成的大字符串是所有可能的拼接中字典序最小的。给定一个字符串数组strs,同时给定它的大小,请返回拼接成的串。测试样例:["abc","de"],2"abcde"import java.util.Arrays;import java.util.Comparator;import java.原创 2017-05-18 16:50:41 · 985 阅读 · 0 评论
分享