百度云

一面 1、中mysql数据库和表设计

笔试题

比较两个版本大小

用例1:

"8.7.0.8";
"8.7.10.0";
第二个版本大

用例2:

"8.7.10";
"8.7.10.0";
相等

用例3:

"8.7.11";
"8.7.10.0";
第一个版本大
public static void main(String[] args) {
        String v1 = "8.7.0.8";
        String v2 = "8.7.10.0";
        System.out.println(versionCompare(v1,v2));
    }
    public static int versionCompare(String v1,String v2){
        //版本号比较,v1 大于 v2:返回正数,v1 等于 v2:返回0,v1 小于v2 ,返回负数
        //note:字符串按照“.”切割,要记得特殊字符转译“\\.”
        List<Integer> v1IntList =  Arrays.stream(v1.split("\\.")).map(Integer::valueOf).collect(Collectors.toList());
        List<Integer> v2IntList  = Arrays.stream(v2.split("\\.")).map(Integer::valueOf).collect(Collectors.toList());
        int i = 0;
        while(i < v1IntList.size() && i < v2IntList.size()){
            int temp1 =  v1IntList.get(i);
            int temp2 = v2IntList.get(i);
            if(temp1 > temp2){
                return 1;
            }else if(temp1 < temp2){
                return -1;
            }else{
                i++;
            }
        }
        while(i < v1IntList.size()){
             int temp = v1IntList.get(i);
             if(temp!=0){
                 return 1;
             }
        }
        while(i < v2IntList.size()){
            int temp = v2IntList.get(i);
            if(temp!=0){
                return -1;
            }
        }
        return 0;
    }
全部评论
暑期实习吗?什么时候投递的?
点赞 回复 分享
发布于 2022-04-02 01:24

相关推荐

Bug压路:老哥看得出来你是想多展示一些项目,但好像一般最多两个就够了😂页数一般一页,多的也就2页;这些项目应该是比较同质化的,和评论区其他大佬一样,我也觉得应该展示一些最拿手的(质量>数量)😁😁😁专业技能部分也可以稍微精简一些
点赞 评论 收藏
分享
爱看电影的杨桃allin春招:我感觉你在炫耀
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务