题一:字符串子串判断
给两个字符串A,B,判断B是A的子串。
public class Test1_1 {
public static boolean compare(String a, String b){
boolean flag = false;
int a_length = 0;
for(int i=0;i<b.length();i++){
int temp_index = 0;
String temp = b.substring(i);
if(temp.length()<a.length())return flag;
for(int j=0;j<a.length();j++){
if(temp.charAt(temp_index)==a.charAt(j)){
a_length++;
temp_index++;
}else{
a_length=0;
break;
}
}
if(a_length==a.length()){
flag=true;
}
}
return flag;
}
public static void main(String[] args) {
String lineA = "AAABBCCC";
String lineB = "BBBCCEEDDDAAABBCCCWWWDDD";
System.out.println(compare(lineA,lineB));
}
}
题二:任意排序
把java的快排写了一遍,排序顺序是从大到小。
public class Test1_1 {
public static void quickSort(int[] num,int l,int r){
int i=l,j=r;
if(i>=j)return;
int temp = num[l];
while (i<j){
while (i<j&&num[j]<=temp)j--;
num[i]=num[j];
while (i<j&&num[i]>=temp)i++;
num[j]=num[i];
}
num[i]=temp;
quickSort(num,l,i-1);
quickSort(num,i+1,r);
}
public static void main(String[] args) {
int[] nums = {3,11,8,12,6,5};
quickSort(nums,0,nums.length-1);
for(int t:nums){
System.out.print(t+" ");
}
}
}