当前位置: 首页 > news >正文

电商免费网站入口百度人工电话多少号

电商免费网站入口,百度人工电话多少号,背景图片设计在线制作,长沙网站开发培训学校531、反转字符串二 给定一个字符串 s 和一个整数 k#xff0c;从字符串开头算起#xff0c;每计数至 2k 个字符#xff0c;就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个#xff0c;则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个#xff0c…531、反转字符串二 给定一个字符串 s 和一个整数 k从字符串开头算起每计数至 2k 个字符就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个则反转前 k 个字符其余字符保持原样。 示例 1 输入s abcdefg, k 2 输出bacdfeg示例 2 输入s abcd, k 2 输出bacd要规律的处理字符串的时候在for循环上每次有规律的递增从开始k判断与总长度的大小。 class Solution {public String reverseStr(String s, int k) {char[] chs.toCharArray();for(int i0;ich.length;i2*k) //控制每次循环的开头{//只要剩余的字符大于等于k个就翻转从i开始的k个字符。包括两种情况剩余长度大于等于2k、在k和2k中间。if(ik-1ch.length) //从i开始的k个字符序号是ik-1 {reverse(ch,i,ik-1);}//剩余字符少于 k 个则将剩余字符全部反转else{reverse(ch,i,ch.length-1);}}return new String(ch);}//定义一个反转函数public void reverse(char[] ch,int i,int j){while(ij){char tch[i];ch[i]ch[j];ch[j]t;i;j--;}} }ACM模式-替换数字 给定一个字符串 s它包含小写字母和数字字符请编写一个函数将字符串中的字母字符保持不变而将每个数字字符替换为number。 例如对于输入字符串 “a1b2c3”函数应该将其转换为 “anumberbnumbercnumber”。 对于输入字符串 “a5b”函数应该将其转换为 “anumberb” 输入一个字符串 s,s 仅包含小写字母和数字字符。 输出打印一个新的字符串其中每个数字字符都被替换为了number 样例输入a1b2c3 样例输出anumberbnumbercnumber 数据范围1 s.length 10000。 使用一个StringBuilder import java.util.*; class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);String s in.nextLine();StringBuilder sb new StringBuilder();for (int i 0; i s.length(); i) {if (Character.isDigit(s.charAt(i))) {sb.append(number);}else sb.append(s.charAt(i));}System.out.println(sb);} }151、反转字符串中的单词 给你一个字符串 s 请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意输入字符串 s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中单词间应当仅用单个空格分隔且不包含任何额外的空格。 示例 1 输入s the sky is blue 输出blue is sky the示例 2 输入s hello world 输出world hello 解释反转后的字符串中不能存在前导空格和尾随空格。示例 3 输入s a good example 输出example good a 解释如果两个单词间有多余的空格反转后的字符串需要将单词间的空格减少到仅有一个。思路整体反转局部反转 class Solution {/*** 不使用Java内置方法实现* p* 1.去除首尾以及中间多余空格* 2.反转整个字符串* 3.反转各个单词*/public String reverseWords(String s) {// System.out.println(ReverseWords.reverseWords2() called with: s [ s ]);// 1.去除首尾以及中间多余空格StringBuilder sb removeSpace(s);// 2.反转整个字符串reverseString(sb, 0, sb.length() - 1);// 3.反转各个单词reverseEachWord(sb);return sb.toString();}private StringBuilder removeSpace(String s) {// System.out.println(ReverseWords.removeSpace() called with: s [ s ]);int start 0;int end s.length() - 1;while (s.charAt(start) ) start;while (s.charAt(end) ) end--;StringBuilder sb new StringBuilder();//去除中间的空格while (start end) {char c s.charAt(start);//如果不是空格或者是第一个空格就加入sb中if (c ! || sb.charAt(sb.length() - 1) ! ) {sb.append(c);}start;}return sb;}/*** 反转字符串指定区间[start, end]的字符*/public void reverseString(StringBuilder sb, int start, int end) {while (start end) {char temp sb.charAt(start);sb.setCharAt(start, sb.charAt(end));sb.setCharAt(end, temp);start;end--;}}private void reverseEachWord(StringBuilder sb) {int start 0;int end 0;int n sb.length();//使用双指针对每个单词进行翻转while (end n) {while (sb.charAt(end) ! ) {end;}reverseString(sb, start, end - 1);start end 1;end start;}} }这道题的关键点就是1、使用sb去除中间的字符串2、先整体翻转再使用双指针逐个单词进行翻转。 ACM模式-右旋字符串 字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k请编写一个函数将字符串中的后面 k 个字符移到字符串的前面实现字符串的右旋转操作。 例如对于输入字符串 “abcdefg” 和整数 2函数应该将其转换为 “fgabcde”。 输入输入共包含两行第一行为一个正整数 k代表右旋转的位数。第二行为字符串 s代表需要旋转的字符串。 输出输出共一行为进行了右旋转操作后的字符串。 样例输入 2 abcdefg样例输出 fgabcde 数据范围1 k 10000, 1 s.length 10000; import java.util.Scanner; //导入包public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);int n in.nextInt();String s in.nextLine();int len s.length(); //获取字符串长度char[] chars s.toCharArray();reverseString(chars, 0, len - 1); //反转整个字符串reverseString(chars, 0, n - 1); //反转前一段字符串此时的字符串首尾尾是0,n - 1reverseString(chars, n, len - 1); //反转后一段字符串此时的字符串首尾尾是n,len - 1System.out.println(chars);}public static void reverseString(char[] ch, int start, int end) {while (start end) {char tch[start];ch[start]ch[end];ch[end]t;start;end--;}} }28、找出字符串中第一个匹配项的下标 给你两个字符串 haystack 和 needle 请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标下标从 0 开始。如果 needle 不是 haystack 的一部分则返回 -1 。 示例 1 输入haystack sadbutsad, needle sad 输出0 解释sad 在下标 0 和 6 处匹配。 第一个匹配项的下标是 0 所以返回 0 。示例 2 输入haystack leetcode, needle leeto 输出-1 解释leeto 没有在 leetcode 中出现所以返回 -1 。即KMP算法 KMP的经典思想就是:当出现字符串不匹配时可以记录一部分之前已经匹配的文本内容利用这些信息避免从头再去做匹配。 前缀表是用来回退的它记录了模式串与主串(文本串)不匹配的时候模式串应该从哪里开始重新匹配。 那么什么是前缀表记录下标i之前包括i的字符串中有多大长度的相同前缀后缀 class Solution {//给字符串s构造next数组private void getNext(int[] next ,String s){int j0;next[0]0;for(int i1;is.length();i){//不相等的话,一直回溯到相等while(j0 s.charAt(j)!s.charAt(i)){jnext[j-1];}//相等的话;jif(s.charAt(i)s.charAt(j))j;next[i]j;}}public int strStr(String haystack, String needle) {if(needle.length()0)return 0;int[] nextnew int[needle.length()];getNext(next,needle);int j0;for(int i0;ihaystack.length();i){//不相等的时候用next数组回溯while(j0 haystack.charAt(i)!needle.charAt(j))jnext[j-1];if(haystack.charAt(i)needle.charAt(j))j;if(jneedle.length())return i1-j;}return -1;} }459、重复的子字符串 给定一个非空的字符串 s 检查是否可以通过由它的一个子串重复多次构成。 示例 1: 输入: s abab 输出: true 解释: 可由子串 ab 重复两次构成。示例 2: 输入: s aba 输出: false示例 3: 输入: s abcabcabcabc 输出: true 解释: 可由子串 abc 重复四次构成。 (或子串 abcabc 重复两次构成。)移动匹配 当一个字符串sabcabc内部由重复的子串组成那么这个字符串的结构一定是这样的 也就是由前后相同的子串组成。 那么既然前面有相同的子串后面有相同的子串用 s s这样组成的字符串中后面的子串做前串前面的子串做后串就一定还能组成一个s如图 所以判断字符串s是否由重复子串组成只要两个s拼接在一起里面还出现一个s的话就说明是由重复子串组成。 当然我们在判断 s s 拼接的字符串里是否出现一个s的的时候要刨除 s s 的首字符和尾字符这样避免在ss中搜索出原来的s我们要搜索的是中间拼接出来的s。 class Solution {public boolean repeatedSubstringPattern(String s) {//由于是重复构成的所以两个拼接中间一定能找到子串sint ns.length();String strss;String substr str.substring(1,2*n-1); //去头去尾int indexsubstr.indexOf(s); if(index ! -1) return true;else return false;} }字符串常用方法 双指针法、多次反转转化为sb
http://www.laogonggong.com/news/122267.html

相关文章:

  • 苏州建设网站市政中标项目seo科技网
  • 全国精品课程建设网站免费网站哪个好
  • 智能云建站dede网站名称不能保存
  • 怎么做黑彩黑彩网站做网站要用到什么
  • 网站 简约微信开发者工具打不开
  • 公司网站建设项目的成本计划东莞专业的单位网站建设
  • 广西城市建设学校手机官方网站wordpress 算数验证码
  • 仿第四城地方门户网站模板wordpress炫酷插件
  • 查询注册过哪些网站wordpress存储插件
  • 域名与网站名称的关系乡村旅游电子商务网站建设
  • 域名所有人是网站名不能转出河北中太建设集团有限公司网站
  • 免费做app页面的网站湖北网站seo策划
  • wordpress图片站点网站空间和流量
  • 有了域名如何建设网站装饰网站建设价格
  • 在线制作成品图片网站 优化 件
  • 中国城乡住房和城乡建设部网站适合做网站背景的图片
  • 怎么建设一个漫画网站wordpress分享文章插件
  • 护肤品网站建设目的技术先进的网站建设公司
  • 哈尔滨产品推广网站网站维护服务公司
  • 网站做wanzhihou综合性医院网站源代码下载
  • 石家庄网站建设的公司iis7.0网站错误代码解决
  • 做甜品网站的需求分析漳州市网站建设价格
  • 南京网站seo找行者seoai一键生成短视频免费版
  • 网站支付按钮怎么做cnn头条新闻
  • 河南建设银行招聘网站有些网址打不开怎么解决
  • wordpress用户端做seo如何赚钱
  • 网站上传格式wordpress插件论坛
  • 网站开发背景和意义百度网盘优化
  • 网站右下角flashwordpress插件图库
  • 在线网站备案产品设计专业最好的大学