比较版本号(力扣)思维 JAVA

这篇具有很好参考价值的文章主要介绍了比较版本号(力扣)思维 JAVA。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

给你两个版本号 version1 和 version2 ,请你比较它们。

版本号由一个或多个修订号组成,各修订号由一个 ‘.’ 连接。每个修订号由 多位数字 组成,可能包含 前导零。每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。
比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。如果版本号没有指定某个下标处的修订号,则该修订号视为 0 。例如,版本 1.0 小于版本 1.1 ,因为它们下标为 0 的修订号相同,而下标为 1 的修订号分别为 0 和 1 ,0 < 1 。

返回规则如下:

如果 version1 > version2 返回 1, 如果 version1 < version2 返回 -1, 除此之外返回 0。

示例 1:

输入:version1 = “1.01”, version2 = “1.001”
输出:0
解释:忽略前导零,“01” 和 "001"都表示相同的整数 “1”

示例 2:

输入:version1 = “1.0”, version2 = “1.0.0”
输出:0
解释:version1 没有指定下标为 2的修订号,即视为 “0”

示例 3:

输入:version1 = “0.1”, version2 = “1.1”
输出:-1
解释:version1 中下标为 0 的修订号是"0",version2 中下标为 0 的修订号是 “1” 。0 < 1,所以 version1 < version2

提示:

1 <= version1.length, version2.length <= 500
version1 和 version2 仅包含数字和 ‘.’
version1 和 version2 都是 有效版本号
version1 和 version2 的所有修订号都可以存储在 32 位整数 中

解题思路:

1、利用Java自带split函数分割比较即可

2、split(“\\.”);才是有效分割小数点

3、同位没有默认0

代码:

class Solution {
    public int compareVersion(String version1, String version2) {
          
    	 String s1[] = version1.split("\\.");
    	 String s2[] = version2.split("\\.");
    	 int len1 = s1.length;
    	 int len2 = s2.length;
    	 
    	 for(int i = 0; i < len1 || i < len2; i ++) {
    		 int xx = 0, yy = 0;//没有则默认0
    		 if(i < len1) xx = Integer.parseInt(s1[i]);
    		 if(i < len2) yy = Integer.parseInt(s2[i]);
    		 if(xx > yy) return 1;
    		 if(xx < yy) return -1;
    	 }
    	  return 0;
           
    }
}

比较版本号(力扣)思维 JAVA,leetcode,java,算法文章来源地址https://www.toymoban.com/news/detail-605403.html

到了这里,关于比较版本号(力扣)思维 JAVA的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 力扣101 对称二叉树 Java版本

    给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false 提示: 树中节点数目在范围 [1, 1000] 内 -100 = Node.val = 100 进阶:你可以运用递归和迭代两种方法解决这个问题吗? 思路在代码中

    2024年02月22日
    浏览(30)
  • JDK8 和 JDK11 Java 两个主要版本的比较

    Java 是一门广泛应用于企业级应用和跨平台开发的编程语言。随着时间的推移,Java 不断演变和发展,版本之间有着许多新的功能和改进。本篇博客将重点关注 JDK 8 和 JDK 11 之间的区别,分析它们的新特性、性能改进和其他方面的差异。 一、性能改进: JDK 11 对性能进行了优化

    2024年02月09日
    浏览(33)
  • JDK8与JDK11:Java两个主要版本的比较

    在Java的世界里,JDK8和JDK11无疑是两个里程碑式的版本。它们在功能、性能和易用性上都进行了许多改进,使得Java开发者能够更高效、更轻松地开发出高质量的程序。在这篇文章中,我们将对这两个版本进行详细的比较,以帮助你更好地了解它们之间的差异。 1. 默认垃圾回收

    2024年03月10日
    浏览(69)
  • 七大基于比较的排序算法(JAVA)

    目录 冒泡排序 优化: 堆排序 插入排序 希尔排序 归并排序 快速排序 优化 选择排序    排序算法的稳定性 : 大小相同 的元素在 排序前后相对位置相同 就称其为 稳定的 排序。 注: 一个本身就是稳定的排序 是可以实现为不稳定的排序的 ;但是相反 一个本身就不稳定的排

    2024年02月08日
    浏览(32)
  • 【译】Java 17的特点:版本8和17之间的比较,这些年来有什么变化?

    原文地址:Java 17 features: A comparison between versions 8 and 17. What has changed over the years?​​​​​​​ 新的Java版本每年发布两次,但每一次新的迭代似乎都只是在前一次的基础上有小的改进。虽然这对Java 17来说可能也是如此,但这个版本具有更深的意义,因为Java 8(目前最常用的

    2024年02月04日
    浏览(28)
  • 【LeetCode 热题 100】矩阵 专题(大多原地算法,需要一定思维)

    解题思路 在 代码注释中!

    2024年02月15日
    浏览(31)
  • 十大排序——11.十大排序的比较汇总及Java中自带的排序算法

    这篇文章对排序算法进行一个汇总比较! 目录 0.十大排序汇总 0.1概述 0.2比较和非比较的区别 0.3基本术语 0.4排序算法的复杂度及稳定性 1.冒泡排序 算法简介 动图演示 代码演示 应用场景 算法分析 2.快速排序 算法简介 动图演示 代码演示 应用场景 算法分析 3.插入排序 算法简

    2024年04月29日
    浏览(28)
  • 【leetcode】 剑指 Offer学习计划(java版本含注释)(下)

    该链接的学习计划如下: 剑指 Offer学习计划 上一版本的博文链接如下: 【leetcode】 剑指 Offer学习计划(java版本含注释)(上) 此贴两年前写的,一直在草稿箱里,今天释放出来,后续有时间完善下!(= - =) 题目: 输入一个非负整数数组,把数组里所有数字拼接起来排成

    2024年03月08日
    浏览(35)
  • leetcode--回溯算法.全排列(java)

    leetcode 46 原题链接-- 全排列 题目描述: 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例2: 输入:nums = [0,1] 输出:[[0,1],[1,0]] 示例3: 输入:nums = [1

    2024年02月08日
    浏览(24)
  • leetcode77. 组合(回溯算法-java)

    来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/combinations 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2: 输入:n = 1, k = 1 输出:[[1]] 提示:

    2024年02月11日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包