题目
代码分析
需要注意判断长度不同的情况
代码展示
class Solution { public int compareVersion(String version1, String version2) { String[] v1 = version1.split("\\."); String[] v2 = version2.split("\\."); int len=v1.length<v2.length?v1.length:v2.length; String[] morelong=v1.length<v2.length?v2:v1; int i=0; for(;i<len;i++) { int temp = compare(v1[i], v2[i]); if(temp!=0) { return temp; } } for(;i<morelong.length;i++) { if(Integer.parseInt(morelong[i])!=0) { return morelong==v1?1:-1; } } return 0; } public static int compare(String str1, String str2) { int s1 = Integer.parseInt(str1); int s2 = Integer.parseInt(str2); if(s1<s2) { return -1; }else if(s1==s2) { return 0; }else{ return 1; } } }
学习情况
1次