试题 算法提高 字符串顺序比较
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
比较两个字符串s1和s2,输出:0表示s1与s2相等;1表示s1的字母序先于s2;-1表示s1的字母序后于s2
输入格式
输入两行,第一行输入一个字符串1,第二行输入字符串2。
输出格式
输出比较的结果
样例输入
abc
abd
样例输出
1
样例输入
English
English
样例输出
0
样例输入
hello
ha
样例输出
-1
有问题可以评论或私信交流,互相学习!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s1 = sc.nextLine();
String s2 = sc.nextLine();
sc.close();
System.out.println(compare(s1,s2));
}
public static int compare(String s1, String s2){
char[] c_s1 = s1.toCharArray();
char[] c_s2 = s2.toCharArray();
int len = Math.min(c_s1.length,c_s2.length);
for (int i = 0; i < len; i++) {
if (c_s1[i]<c_s2[i]){
return 1;
}else if (c_s1[i]>c_s2[i]){
return -1;
}
}
if (c_s1.length==c_s2.length){
return 0;
}else if (c_s1.length>c_s2.length){
return -1;
}else return 1;
}
}```