substring()&&charAt()_substring() charat()-程序员宅基地

技术标签: java  字符串  算法交流  

substring()

  • str=str.substring(intbeginIndex);
    截取掉str从首字母起长度为beginIndex的字符串,将剩余字符串赋值给str
  • str=str.substring(int beginIndex,int endIndex);
    截取str中从beginIndex开始至endIndex结束时的字符串,并赋值给str;

一个字符串的非空子串是指字符串中长度至少为1 的连续的一段字符组成
的串。例如,字符串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一共7 个。
注意在计算时,只算本质不同的串的个数。
请问,字符串0100110001010001 有多少个不同的非空子串?
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
注:hashset会自动去除重复!

import java.util.HashSet;
import java.util.Set;

public class 子串的数量 {

public static void main(String[] args) {
	String s1 = "aaab";
	String s2 = "0100110001010001";
	System.out.println(subSum(s1));
	System.out.println(subSum(s2));

}

public static int subSum(String s) {
	Set<String> set = new HashSet<String>();
	for(int i = 0; i < s.length(); i++) {
		for(int j = i ; j < s.length(); j++) {
			//将每一个子串都加入到set集合中
			set.add(s.substring(i, j + 1 ));
		}
	}
	return set.size();
}

}

charAt()

  • char result=s.charAt(6);
    方法用于返回指定索引处的字符(索引范围为从 0 到 length() - 1)``
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ss977/article/details/108942219

智能推荐

JavaScript的数据类型及强弱类型_javascript 强类型-程序员宅基地

文章浏览阅读878次。JavaScript的数据类型及强弱类型1、JS数据类型JavaScript中有6种数据类型:数字(number)、字符串(string)、布尔值(boolean)、undefined、null、对象(Object)。其中对象类型包括:数组(Array)、函数(Function)、还有两个特殊的对象:正则(RegExp)和日期(Date)。2、JS数据类型的判断利用函数typeof()进行..._javascript 强类型

tensorflow-mnist数据集下载失败,找不到input_data&CNN手写体识别_使用minist数据集下载了找不到-程序员宅基地

文章浏览阅读1.7k次。综述很多人入门tensorflow的时候都是看了社区的教程的。 tensorflow中文社区传送门 新人的第一步往往是mnist手写体识别教程 很多人直接使用教程提供的代码下载数据集结果下载失败。这里给出方法: 将原来的import input_data改为from tensorflow.examples.tutorials.mnist import input_d..._使用minist数据集下载了找不到

Git拉取代码未能对git remote进行身份验证-程序员宅基地

文章浏览阅读4.4k次。1. 错误信息截图(借用一下别人报错信息)2. 出现错误原因错误原因的出现其实就是因为你的gitee密码更改了,但是没用同步到Windows凭据管理器上,所以导致报这个错误3. 解决方法3.1 首先点击控制面板找到用户账户,操作如下图所示3.2 点击用户账户中的凭据管理器,操作如下图所示3.3 点击凭据管理器找到Windows凭证3.4 点击Windows凭据,找到普通凭据(借用一下别人的图)3.5 编辑成功后就基本可以了3.6 重新拉取代码就不会有问题了由于自己本身在_未能对git remote进行身份验证

ORACLE的内部表——DUAL表_oracle dual自带的内存表-程序员宅基地

文章浏览阅读871次。oracle,dual表_oracle dual自带的内存表

(附源码)springboot工科树洞网站 计算机毕设48510-程序员宅基地

文章浏览阅读857次,点赞18次,收藏20次。(1)登录:管理员的账号是在数据表表中直接设置生成的,不需要进行注册;(2)轮播图/校园公告管理:管理员可以对系统前台展示的轮播图以及校园公告信息进行增删改查,方便用户进行查看。(3)系统用户:管理员可以对工科树洞网站中的管理员以及前台注册的用户进行审核管理。(4)模块管理:在“模块管理”这一菜单下可以对系统当中的用户操作的所有信息进行管理,包含了校园论坛、帖子分类。(3)资源管理:管理员可以对工科树洞网站前台展示的校园资讯以及资讯分类所属的分类进行管控。

【杂记】IDEA和Eclipse如何查看GC日志_idea怎么看代码的gc情况-程序员宅基地

文章浏览阅读543次,点赞9次,收藏10次。论IDEA和Eclipse如何查看GC日志的方式_idea怎么看代码的gc情况

随便推点

java读取file文件路径_Java 中几种获取文件路径的方式-程序员宅基地

文章浏览阅读1.7k次。原标题:Java 中几种获取文件路径的方式1. 前言Java开发中我们经常要获取文件的路径,比如读取配置文件等等。今天我们就关于文件的路径和如何读取文件简单地探讨一下。2. 文件的路径文件的路径通常有 相对路径与 绝对路径。2.1 相对路径以当前文件为基准进行一级级目录指向被引用的资源文件。在 Java 代码中以当前运行的代码所在的位置为参照位置,只要被引用的文件相对于引用的文件的位置不变就可以被..._java file 获取 "/" 形式路径

错误:NameError: name 'HTTPError' is not defined解决方式_nameerror: name 'http' is not defined-程序员宅基地

文章浏览阅读2.8k次。第一种解决方式: from urllib2 import urlopen, HTTPError try: # ... except HTTPError: pass第二种解决方式:import urllib2 try: # ... response = urllib2.urlopen(...) # ... except u..._nameerror: name 'http' is not defined

Win10+Ubuntu双系统扩容Ubuntu分区(Gparted)_ubuntu双系统扩容u盘启动试用ubuntu-程序员宅基地

文章浏览阅读746次。要用到的工具:Gparted我们在Linux下直接操作是无法扩容自己的。然后又不想把Gparted写到U盘。这个时候还有一个办法。之前装Ubuntu的时候写入了一个系统安装盘,如果没有清掉的话就可以派大用了。从U盘进入试用Ubuntu然后在用Gparted就行了!(亲测没有任何问题)..._ubuntu双系统扩容u盘启动试用ubuntu

Windows 11 如何同步文件到OneDrive ?_win11普通文件夹怎么通过onedrive同步-程序员宅基地

文章浏览阅读130次。本文将向您介绍在 Windows 11 中将文件同步到 OneDrive 的推荐方式,无论是单个文件还是多个文件,从本地到云端,还是直接在两个云或两个本地位置之间同步。请继续阅读以了解更多详细信息。_win11普通文件夹怎么通过onedrive同步

java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String-程序员宅基地

文章浏览阅读116次。在重构项目的时候,遇到了mybatis的一个异常:java.lang.IllegalArgumentException:invalidcomparison:java.util.Dateandjava.lang.String随后在网上查询解决方法时看到,这个是mybatis在3.3.0版本修复的一个bug,3.3.0之前是没有问题,之后就会报异常。原因是:..._java.lang.illegalargumentexception: invalid comparison: com.hclzz.petshop.be

SpringMVC学习之JSTL(JSP标准标签库)一_sprjstl-程序员宅基地

文章浏览阅读2k次。1.JSTL库官方下载地址:http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.tar.gz JSTL是标准标签库,它是通过多个标签库来暴露其行为的,JSTL1.2中可以分为5类区域:core:核心标签库,我们学习的重点;_sprjstl