
字符串
字符串
Huiex胖子君
广告位招租
展开
-
剑指 Offer 38. 字符串的排列
回溯很标致的一道回溯题照着模板写就行没有用剪枝具体的流程注解里面有public class Offer38 { public String[] permutation(String s) { HashSet<String> result = new HashSet<>();// ArrayList<String> result = new ArrayList<>();//结果集 String原创 2021-12-08 16:17:09 · 179 阅读 · 0 评论 -
剑指 Offer 48. 最长不含重复字符的子字符串
用滑动窗口主要注意滑动窗口的滑动的条件用两个指针,从最左边开始,右指针向右移动,并且右指针移动后,将对应字符存入set中,当右指针指向的字符已经存在set中时,就移动左指针,然后set删去左指针对应的字符,直到set中没有右指针对应的字符时,左指针停止移动public class Offer48 { /** 滑动窗口,*/ public int lengthOfLongestSubstring(String s) { /** 先将字符串转化为字符数组*/原创 2021-12-08 16:04:57 · 602 阅读 · 0 评论 -
剑指 Offer 50. 第一个只出现一次的字符
主要就是用HashMap的特性,还有方法;将字符串中的数组存入HashMap的key中,出现一次的vul为false,出现多次的true再在字符串中找到第一个为true的字符 public char firstUniqChar(String s) { if (s == ""){ return ' '; } /** 先将字符串中的数组存入HashMap的key中,出现一次的vul为false,出现多次的true*/原创 2021-11-18 21:26:06 · 182 阅读 · 0 评论 -
剑指 Offer 05. 替换空格
??? public String replaceSpace(String s) { return s.replace(" ","%20"); }原创 2021-11-17 21:45:25 · 71 阅读 · 0 评论 -
剑指 Offer 58 - II. 左旋转字符串
没什么说的,就纯调用api注意substring()是左闭,右开,从0开始 public static String reverseLeftWords(String s, int k) { StringBuffer stringBuffer = new StringBuffer(); /** 然后将开头到k位置字符串剪下来*/ String substring2 = s.substring(0, k); String substring1原创 2021-11-17 21:28:10 · 61 阅读 · 0 评论 -
剑指 Offer 58
思路注解里面都有了主要还是主要跳出循环的条件,还有最后输出的时候要把最后的空格除去字符串用的方法也要注意/** 创建一个字符串存放结果字符串*/ StringBuffer str = new StringBuffer(); /** 先删除首尾的空格*/ s.trim(); /** 两个指针,都指向最后一个字母*/ int i = s.length()-1; int j = s.length()-1原创 2021-11-17 20:50:59 · 75 阅读 · 0 评论