其他题目2

所有子串,仅出现一次的字符,求缩写
6. 求字符串的所有子串(暴力求解即可)
自己写一个substring();
import java.util.*;
public class solution{
public static String makeit(String s,int i,int j)
{
char[] c=s.toCharArray();
StringBuffer ans=new StringBuffer();
for(int k=i;k<j+1;k++)
ans.append(c[k]);
System.out.print(ans.toString());
return ans.toString();
}
public static void solution(String s)
{
for(int i=0;i<s.length();i++)
for(int j=i;j<s.length();j++)
{makeit(s,i,j);
System.out.print('\n');}
}
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String s=sc.next();
solution(s);
}
}

  1. 字符串大小写转换
    大写+32等于小写,小写减去32等于大写
    public class midsreach {
    public static void solution(String s)
    {
     char[] a=s.toCharArray();
     for(int i=0;i<s.length();i++)
     {
         if(a[i]>='a'&&a[i]<='z')
         {
             a[i]=(char) (a[i]-32);
         }
         else if(a[i]>='A'&&a[i]<='Z')a[i]=(char) (a[i]+32);
     }
     for(int i=0;i<s.length();i++)
         System.out.print(a[i]);
    }
    public static void main(String arg[])
    {
     String s="sadAdsaAqrqr";
     solution(s);
    }
    }
  2. 输出字符串中仅出现一次的第一个字符
    利用哈希数组或者哈希Map来判断 或者队列
    public class midsreach {
    public static void solution(String s)
    {
     char[] a=s.toCharArray();
     int [] num=new int[30];
     for(int i=0;i<s.length();i++)
     {
         num[a[i]-'a']++;
     }
     for(int i=0;i<s.length();i++)
         if(num[a[i]-'a']==1)
             {System.out.print(a[i]);break;}
    }
    public static void main(String arg[])
    {
     String s="sadasddsaweqrqr";
     solution(s);
    }
    }

11.输出字符串简称,例如字符串是"end of file",输出"EOF"
public class midsreach {
public static void solution(String s)
{
char[] a=s.toCharArray();
for(int i=0;i<s.length();i++)
{
if(i==0||a[i-1]==' ')
System.out.print((char)(a[i]-32));
}
//for(int i=0;i<s.length();i++)
//{System.out.print(a[i]);}
}
public static void main(String arg[])
{
String s="end of life";
solution(s);
}
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务