【254天】我爱刷题系列(13)

news/2025/5/31 0:48:00

叨叨两句

  1. 戒骄戒躁!
  2. 不要小看任何一个知识点!

题26:正则表达式的一个标准写法(Pattern)

题目描述

书写一个类,类名为Itheima;
类中有一个方法,方法名bobThere;
给你一个字符串,如果包含bob就返回true
注意如果bob中的字符o,可以是任何字符
例如:bob返回true, bpb返回true

提示

方法调用期望值
bobThere("abcbob")true
bobThere("b9b")true
bobThere("bac")false
public class Itheima {public boolean bobThere(String str){String regex = "b.b";Pattern p = Pattern.compile(regex);Matcher m = p.matcher(str);if (m.find()) {return true;} else {return false;}}
}

题27:查找满足特定条件的指定字符

题目描述

书写一个类,类名为Itheima;类中有一个方法,方法名countYZ;

给定一个字符串,找出里面以“y”或者“z”结尾的单词的个数,也就是说,跟在“y”或者“z”后面的字符不是英文单词。
“y”在“heavy”中和“z”在“fez”中计数,而“y”在“yellow”中不计数,(不区分大小写)

提示

方法调用期望值
countYZ("fez day")2
countYZ("day fez")2
countYZ("day fyyyz")2
public class Itheima {public int countYZ(String str){int count = 0;String str1 = str + " ";char[] c = str1.toCharArray();for (int i = 0; i < c.length - 1; i++) {if(c[i] == 'y' || c[i] == 'z' || c[i] == 'Y' || c[i] == 'Z'){char t = c[i + 1];if(!((t >= 'a' && t <= 'z') || (t >= 'A' && t <= 'Z'))){count++;}}}/*    if(c[c.length - 1] == 'y' || c[c.length - 1] == 'z' || c[c.length - 1] == 'Y' || c[c.length - 1] == 'Z'){count++;}*/return count;}
}

题28:取int类型数字指定位数形成int数组

题目描述

书写一个类,类名为Itheima;
类中有一个方法,方法名makePi;
返回一个包含pi(参考Math.PI)的前n位数字的整数数组长度,n为方法接收的参数。
例如:n为3,则返回{3,1,4}。

提示

方法调用期望值
makePi(1)[3]
makePi(2)[3,1]
makePi(3)[3,1,4]
public class Itheima {public int[] makePi(int n) {String str = Math.PI + "";String str2 = str.replaceAll("\\.", "");int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = Integer.parseInt(str2.charAt(i)+"");}return arr;/*int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = (int) (Math.PI * Math.pow(10, i) % 10);}return arr;*/}
}

题29:字符串前后加空格+累积标记

题目描述

书写一个类,类名为Itheima;

类中有一个方法,方法名gHappy;

如果字符串中的’g’的相邻左边或者右边有另外一个’g’,则’g’在这个字符串中是happy的,
如果字符串中所有的’g’都是happy的则返回true,否则返回false。

提示

方法调用 期望值
gHappy("xxggxx") true
gHappy("xxgxx") false
gHappy("xxggyygxx") false

public class Itheima {public boolean gHappy(String str){boolean sumFlag = true;boolean flag = true;boolean hasG = false;String newStr = " " + str + " ";for (int i = 1; i < newStr.length() - 1; i++) {char cBefore = newStr.charAt(i - 1);char c = newStr.charAt(i);char cLater = newStr.charAt(i + 1);if(c == 'g'){if(c == cBefore || c == cLater){flag = true;} else {flag = false;}hasG = true;} sumFlag = sumFlag && flag;}return sumFlag && hasG;}
}

题30:连续出现字符计数

题目描述

书写一个类,类名为Itheima;

类中有一个方法,方法名maxBlock;

给定一个字符串,返回该字符串中连续出现个数最多的字符的数量。

提示

方法调用期望值
maxBlock("hoopla")2
maxBlock("abbCCCddBBBxx")3
maxBlock("")0
int count = 1;//用于作为中间变量,记录正在遍历的字符的个数HashMap<Character,Integer> map = new HashMap<>();//Key:字符 Value:最大连续出现次数for (int i = 0; i < str.length() - 1; i++) {char c1 = str.charAt(i);char c2 = str.charAt(i + 1);map.put(c1,count);if(c1 == c2){count++;if(count > map.get(c1)){map.put(c1, count);}} else {count = 1;}}int totalMax = 0;for (Character c : map.keySet()) {if(map.get(c) >= totalMax){totalMax = map.get(c);}}return totalMax;

题31: 排除特定数组索引

题目描述

书写一个类,类名为Itheima;
类中有一个方法,方法名sum13;
有一个整型数组,返回的结果是数组所有元素的总和,如果数组中出现整型数13的时候,
那么元素13和13后面的一个元素也不计入总和里面。

提示

方法调用期望值
sum13([1,2,2,1])6
sum13([1,1])2
sum13([1,2,2,1,13])6
public class Itheima {public int sum13(int[] arr){HashSet<Integer> hs = new HashSet<>();  int sum = 0;for (int i = 0; i < arr.length; i++) {if(arr[i] == 13){hs.add(i);hs.add(i + 1);}}for(int i = 0; i < arr.length; i++){if(hs.contains(i)){continue;}sum += arr[i];}return sum;

题32:使用标记切换使用代码

题目描述

书写一个类,类名为Itheima;
类中有一个方法,方法名sum67;
有一个整型数组,返回数组中的数字的总和,如果数组含有数6和7
那么忽略不计入从6开始并延伸到有7的数字段,7后面的数字需要参与运算(每6个将跟随至少一个7)。
返回0表示没有数字。

提示

方法调用期望值
sum67([1,2,2])5
sum67([1,2,2,6,99,99,7])5
sum67([1,1,6,7,2])4
public class Itheima {public int sum67(int[] arr){boolean switch67 = true;boolean sumFlag = true;int sum = 0;for (int i = 0; i < arr.length; i++) {if(arr[i] == 6 && switch67){switch67 = false;sumFlag = false;} if(arr[i] == 7 && !switch67){switch67 = true;sumFlag = true;sum -= 7;}if(sumFlag){sum += arr[i];}}return sum;

题33:删除不区分大小写的子字符串

题目描述

书写一个类,类名为Itheima;

类中有一个方法,方法名withoutString;

给定两个字符串参数base和remove,返回删除了remove字符串的base字符串(不区分大小写),
并且返回的base字符串不含有remove的重叠事例。
例如:("This is a FISH", "IS") -> "Th a FH" (注意Th和a之间有两个空格哦)
注意: 期望值里的一个空格可以代表多个空格.

提示

方法调用期望值
withoutString("Hello there","llo")"He there"
withoutString("Hello there","e")"Hllo thr"
withoutString("Hello there","x")"Hello there"
public class Itheima {public String withoutString(String base,String remove){for (int i = 0; i < base.length() - remove.length(); i++) {String str = base.substring(i,remove.length()+ i);if(str.equalsIgnoreCase(remove)){base = base.replace(str, "");}}return base;
文章来源:https://blog.csdn.net/weixin_34336526/article/details/88962241
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://dhexx.cn/news/show-560838.html

相关文章

Python编程让繁琐的工作自动化(1)-操作图像

在研究生生活中&#xff0c;帮老师干过的简单或复杂的工作不少&#xff0c;这其中&#xff0c;尤其是重复性的文件整理的工作让人烦躁不堪。后来在学习了python之后&#xff0c;发现很多东西都可以让电脑自动帮你去做&#xff0c;比如说几十个文件重命名&#xff0c;几十份材料…

20个jQuery时尚插件

使用这些选定的时尚jQuery插件来风格化您的设计。 它们的样式确实很好&#xff0c;并且功能强大。 1. Google Wave历史记录滑块 这将使您的访问者可以不时地来回查看在评论主题上进行的更改。 资源 观看现场演示 2.提示 具有淡入/淡出效果的漂亮工具提示。 资源 3. BlockUI…

Angular企业级开发(4)-ngResource和REST介绍

一、RESTful介绍 RESTful维基百科 REST&#xff08;表征性状态传输&#xff0c;Representational State Transfer&#xff09;是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。RESTful风格的设计不仅具有更好的可读性&#xff08;Human Readable&#xff0…

Python编程让繁琐的工作自动化(2)-处理Excel电子表格

一个 Excel 电子表格文档称为一个工作簿。一个工作簿保存在扩展名为.xlsx 的文件中。每个工作簿可以包含多个表&#xff08;也称为工作表&#xff09;。用户当前查看的表&#xff08;或关闭 Excel 前最后查看的表&#xff09;&#xff0c;称为活动表。 每个表都有一些列&#x…

Clusetered Index VS NonClustered Index

关于ClusteredIndex 与 NonclusteredIndex的区别。 一般表&#xff0c;如果存在主Key&#xff0c;会自动生成一个主keyindex, 主key默认为ClusteredIndex。表格在存储过程中&#xff0c;会自动按照主Key进行排序。 数据在检索的时候&#xff0c;不需要Order by 主Key。 因为是将…

ios 弹出框

2019独角兽企业重金招聘Python工程师标准>>> 1&#xff0c;取消、确定 UIAlertController *alertController [UIAlertController alertControllerWithTitle:"提示" message:"你确定删除该消息&#xff1f;" preferredStyle:UIAlertControllerS…

jQuery和AJAX Sweet Tab

介绍 随着世界进入网页设计的新时代&#xff0c;以直观且引人注目的方式组织页面的内容非常重要。 开发人员划分文本的一个原则是使用标签。 标签可让您在有限的空间内使用更多内容&#xff0c;并提供访问方式。 今天&#xff0c;我们将讨论如何在CSS3和jQuery的帮助下制作一个…

Python编程让繁琐的工作自动化(3)-处理CSV文件和(JSON数据)

CSV 表示“Comma-Separated Values&#xff08;逗号分隔的值&#xff09;”&#xff0c;CSV文件是简化的电子表格&#xff0c;保存为纯文本文件。Python 的csv 模块让解析CSV 文件变得容易。CSV 文件中的每行代表电子表格中的一行&#xff0c;逗号分割了该行中的单元格。CSV 文…

ubuntu无法解析主机错误与解决的方法

今天在用命令行进行操作的时候&#xff0c;出现了无法解析主机的错误。google了一下&#xff0c;原来是hosts文件的问题。更改过来即可了 进入终端&#xff0c;输入 sudo gedit /etc/hosts.输入password进行更改 将里面的名字(127.0.0.1后面的内容)改为本机名&#xff0c;比如我…

linux应用之mysql数据库的安装及配置(centos)

CentOS下Mysql数据库的安装与配置 如果要在Linux上做j2ee开发&#xff0c;首先得搭建好j2ee的开发环境&#xff0c;包括了jdk、tomcat、eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--CentOS下j2ee环境搭建),如果要开发web项目&#xff0c;我们…