codingbat:recursion-1:3
来源:互联网 发布:mysql安装教程 图解 编辑:程序博客网 时间:2024/05/29 09:09
public String pairStar(String str) {
if(str.length()<2)
return str;
if(str.charAt(0)==str.charAt(1))
return str.substring(0,1)+"*"+pairStar(str.substring(1,str.length()));
else
return str.substring(0,1)+pairStar(str.substring(1,str.length()));
}
public String endX(String str) {
if(str.length()<2)
return str;
if(str.substring(0,1).equals("x"))
return endX(str.substring(1,str.length()))+"x";
else
return str.substring(0,1)+endX(str.substring(1,str.length()));
}
public int countPairs(String str) {
if(str.length()<3)
return 0;
if(str.charAt(0)==str.charAt(2))
return 1+countPairs(str.substring(1,str.length()));
else
return countPairs(str.substring(1,str.length()));
}
public int countAbc(String str) {
if(str.length()<3)
return 0;
if(str.substring(0,3).equals("abc")||str.substring(0,3).equals("aba"))
return 1+countAbc(str.substring(2,str.length()));
else
return countAbc(str.substring(1,str.length()));
}
public int count11(String str) {
if(str.length()<3){
if(str.equals("11"))
return 1;
else
return 0;
}
if(str.substring(0,2).equals("11"))
return 1+count11(str.substring(2,str.length()));
else
return count11(str.substring(1,str.length()));
}
public String stringClean(String str) {
if(str.length()<2)
return str;
if(str.charAt(0)==str.charAt(1))
return stringClean(str.substring(1,str.length()));
else
return str.substring(0,1)+stringClean(str.substring(1,str.length()));
}
public int countHi2(String str) {
if(str.length()<3)
{
if(str.equals("hi"))
return 1;
else
return 0;
}
if(str.substring(0,3).equals("xhi"))
return countHi2(str.substring(3,str.length()));
else if(str.substring(0,2).equals("hi"))
return 1+countHi2(str.substring(2,str.length()));
else
return countHi2(str.substring(1,str.length()));
}
public String parenBit(String str) {
if(str.substring(0,1).equals("(")&&str.substring(str.length()-1,str.length()).equals(")"))
return str;
else {
if(str.substring(0,1).equals("("))
return parenBit(str.substring(0,str.length()-1));
else
return parenBit(str.substring(1,str.length()));
}
}
public boolean nestParen(String str) {
if(str.length()<3){
if(str.equals("()")||str.equals(""))
return true;
else
return false;
}
else{
if(str.substring(0,1).equals("(")&&str.substring(str.length()-1,str.length()).equals(")"))
return nestParen(str.substring(1,str.length()-1));
else
return false;
}
}
public int strCount(String str, String sub) {
if(str.length()<sub.length())
return 0;
if(str.equals(sub))
return 1;
else
{
if(str.substring(0,sub.length()).equals(sub))
return 1+strCount(str.substring(sub.length(),str.length()),sub);
else
return strCount(str.substring(1,str.length()),sub);
}
}
public boolean strCopies(String str, String sub, int n) {
if(n<=0)
return true;
if(str.length()<sub.length())
return false;
if(str.substring(0,sub.length()).equals(sub))
return strCopies(str.substring(1,str.length()),sub,n-1);
else
return strCopies(str.substring(1,str.length()),sub,n);
}
public int strDist(String str, String sub) {
if(str.length()<sub.length())
return 0;
if(str.equals(sub))
return str.length();
if(!str.substring(0,sub.length()).equals(sub))
return strDist(str.substring(1,str.length()),sub);
else
{
if(str.substring(str.length()-sub.length()).equals(sub))
return str.length();
else
return Math.max(strDist(str.substring(sub.length(),str.length()),sub),
strDist(str.substring(0,str.length()-1),sub));
}
}
- codingbat:recursion-1:3
- codingbat:recursion-2:1(JAVA)
- Recursion
- Recursion
- Recursion
- Recursion
- Recursion
- Recursion
- Recursion
- Recursion
- codingbat :recursion1:2(JAVA)
- codingbat这个有意思。^_^
- Codeingbat:recursion-1:1(JAVA)
- Scala Learning(3): Tail Recursion定义
- An Introduction to Recursion, Part 1
- Erlang tail recursion和body recursion 在OTP19.1版本上执行时间差异
- MatrixMultiply(recursion、non-recursion)
- MIT 6.00 1x Lecture 5 Recursion 递归 学习笔记
- Week7-3HMM1
- DHCP源码分析_dhcpd后台进程子模块
- 离散系统的响应
- 自定义可适应ScrollView的ListView
- C语言内存空间分布详解
- codingbat:recursion-1:3
- USACO--Milking Cows
- 零碎笔记(二)
- bash: /opt/Tools/linux-devkit/bin/arm-arago-linux-gnueabi-gcc: No such file or directory
- Python中请使用isinstance()判断变量类型
- 2个无线路由器怎么连接
- Python中配置matplotlib模块
- C语言:strcpy()
- codingbat:recursion-2:1(JAVA)