第一題代碼:java
分析:將字符數組中的每一個字符串,找出其中最長的那個與字符數組中長度進行比較:數組
a、當最長的字符串的長度大於等於字符數組的長度時,直接輸出spa
b、當最長的字符串的長度小於字符數組的長度時,找出該長度下整數值最大的那個字符串,在前面部0輸出blog
package com.njupt; public class Heia { public String MaxLength(String[] string){ int max=Integer.valueOf(string[0]); int index=0; for(int i=1;i<string.length;i++){ int temp=Integer.valueOf(string[i]); if(max<temp){ max=temp; index=i; } } if(string[index].length()>=string.length){ return string[index]; } else{ String str=""; int tem=string.length-string[index].length(); for(int j=0;j<tem;j++){ str +="0"; } str +=string[index]; return str; } } public static void main(String[] args){ String[] string={"","2","0"}; Heia h=new Heia(); System.out.println(h.MaxLength(string)); } }
第二題代碼:(代碼可能還有點問題,等待修改)字符串
import java.util.ArrayList; public class Test { public void QuNaer(String string){ ArrayList<String> alist=new ArrayList<>(); string=string.trim(); String str=string.valueOf(string.charAt(0)); for(int i=1;i<string.length();i++){ if(string.charAt(i)=='-'){ str=str.trim(); alist.add(str); str="-"; } else{ if(string.charAt(i)!=' '){ str +=string.charAt(i); } else{ if(string.charAt(i-1)!=' '){ str +=" "; } } } } str=str.trim(); alist.add(str); System.out.println(alist); } public static void main(String[] args) { // TODO Auto-generated method stub String string="-name Lily -age 21 -school \"zhao yan\""; //String string =" zhao yan "; Test t=new Test(); t.QuNaer(string); } }
第三題代碼:string
分析:由於該題的目標是如何使得字符串a經過添加或者減小一下字符,最終獲得字符串bclass
注:字符串a=「bc「,字符串b=」cb「;要進行+c,-c操做
import
具體作法:List
一、遍歷字符串a,(當前a的位置爲i);遍歷
二、判斷字符串中第i個位置的字符(a.CharAt(i))是在b中存在;
a、若是存在,從b第一個字符(j=0)開始查找第一個與字符串a當前位置i相等的字符,並b以前字符依次進行+b對應的字符b.CharAt(j),最後將b中 j+1位置前的字符都刪除
b、若是不存在,執行-a.CharAt(i)操做。
三、當遍歷完字符串a時,判斷字符串b中是否還有字符,一次執行+b.CharAt(j)。
package com.njupt; public class Cont { public String diff(String a,String b){ String string=""; for(int i=0;i<a.length();i++){ String str=String.valueOf(a.charAt(i)); if(b.contains(str)){ int j=0; //System.out.println(b.charAt(j)!=a.charAt(i)); while(b.charAt(j)!=a.charAt(i)){ string += "+"+b.charAt(j)+","; ++j; } b=b.substring(j+1); } else{ string += "-"+a.charAt(i)+","; } } for(int i=0;i<b.length();i++){ string += "+"+b.charAt(i)+","; } return string; } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String string1="abaced"; String string2="dabababacdb"; Cont c= new Cont(); System.out.println(c.diff(string1, string2)); //System.out.println(string1.substring(1)); } }