题目

Compare two version numbers version1 and version1.
If version1 > version2 return 1, if version1 < version2 return -1, otherwise return 0.

You may assume that the version strings are non-empty and contain only digits and the . character.
The . character does not represent a decimal point and is used to separate number sequences.
For instance, 2.5 is not "two and a half" or "half way to version three", it is the fifth second-level revision of the second first-level revision.

Here is an example of version numbers ordering:

0.1 < 1.1 < 1.2 < 13.37

翻译:

比较两个给定的版本号的大小,前者大输出1,后者大输出0,无法比较输出0

思路:

题目中说道,版本号都是数值类型的字符串,且包含‘.’,这样可以按照‘.’来进行切割,得到每个版本号的列表,为了比较的方面,对于长度不足的列表进行补充0的操作,无实际意义,仅仅为了方便

好了,思想很简单,下面是具体实现:

#!usr/bin/env python
#encoding:utf-8'''
__Author__:沂水寒城
功能:Compare Version Numbers
'''def compare_version_num(version1, version2):'''比较版本号大小前者大输出1,后者大输出0,无法比较输出0'''version_list1=[int(one) for one in version1.split('.')]version_list2=[int(one) for one in version2.split('.')]# print version_list1# print version_list2len1=len(version_list1)len2=len(version_list2)big=max(len1, len2)small=min(len1,len2)value=big-smallif len1!=big:version_list1.extend([0]*value)elif len2!=big:version_list2.extend([0]*value)# print version_list1# print version_list2i=0while i<big:if version_list1[i]>version_list2[i]:print 1breakelif version_list1[i]<version_list2[i]:print -1breakelse:i+=1if __name__ == '__main__':compare_version_num('1.2','1.2.4')compare_version_num('1.1.3','1.0.4')compare_version_num('1.2','2.2.4')compare_version_num('1.2.3.0','1.2.4')


结果如下:

-1
1
-1
-1
[Finished in 0.3s]


python求解LeetCode习题Compare Version Numbers相关推荐

  1. LeetCode算法入门- Compare Version Numbers -day14

    LeetCode算法入门- Compare Version Numbers -day14 题目描述: Compare two version numbers version1 and version2 ...

  2. LeetCode165- 比较版本号(Compare Version Numbers)

    LeetCode165- 比较版本号(Compare Version Numbers) 最近全国疫情严重,待在家里没事干,马上又要准备春招了,最近刷刷题,记录一下!再说一句,武汉加油,大家出门记得戴口 ...

  3. LeetCode Compare Version Numbers(版本比较)

    题意:给出两个版本号,比较这两个版本 思路:因为版本号是以.分割,所以分别将两个版本以.分割成字符串数组,再比较数字字符串 代码如下: public class Solution {public in ...

  4. leetcode 1365. How Many Numbers Are Smaller Than the Current Number(python)

    描述 Given the array nums, for each nums[i] find out how many numbers in the array are smaller than it ...

  5. python求解迷宫问题,配js实现的走迷宫动画,动起来才有意思~

    前言 继昨天手动实现了走迷宫问题,虽然是实现了,但是看到被我画成乱七八糟的草稿纸,总是觉得不爽,不仔细看,又得把自己给走迷糊了,于是自己使用js实现了一下,效果还不错!先看一下展示效果吧!(文末配有j ...

  6. python 物理学中的应用_利用python求解物理学中的双弹簧质能系统详解

    前言 本文主要给大家介绍了关于利用python求解物理学中双弹簧质能系统的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 物理的模型如下: 在这个系统里有两个物体,它们的质 ...

  7. python快速编程入门课后简答题答案-编程python入门 编程python入门课后习题

    编程python入门 编程python入门课后习题 米粒妈咪课堂小编整理了填空.选择.判断等一些课后习题答案,供大家参考学习. 第一章 一.填空题 Python是一种面向对象的高级语言. Python ...

  8. python刷leetcode_零基础python刷leetcode -- 3. Longest Substring Without Repeating Characters

    算法很重要,但是每天也需要学学python,于是就想用python刷leetcode 的算法题,和我一起开始零基础python刷leetcode之旅吧.如有不对的地方,希望指正,万分感谢~~ 题目 最 ...

  9. python代码物理_利用python求解物理学中的双弹簧质能系统详解

    前言 本文主要给大家介绍了关于利用python求解物理学中双弹簧质能系统的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 物理的模型如下: 在这个系统里有两个物体,它们的质 ...

  10. Python in worker has different version 3.7 than that in driver 3.6

    环境: 组件 版本 Ubuntu 20.04 Spark 3.0.0-preview2-bin-hadoop3.2 完整报错如下 : Py4JJavaError: An error occurred ...

最新文章

  1. 并发编程基础篇——第一章(并发相关基础概念理解)
  2. 力扣--91. 解码方法
  3. Java Web学习总结-文件下载
  4. HDU4669_Mutiples on a circle
  5. python的数据结构包括那些_python算法与数据结构-什么是数据结构
  6. 重庆木叶村,每天被忍者迷骚扰500次
  7. 全网首发:JDK绘制文字:五、字体上下文产生流程
  8. 【2018-2019 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) F】Rectangles【扫描线】
  9. C#中IntPtr打印输出
  10. 『动态规划』矩阵连乘
  11. erp系统实施方案会遇到哪些问题?
  12. ffmpeg/avconv
  13. bigDecimal学习笔记_隋小白
  14. 操作系统真实的虚拟内存是什么样的(一)
  15. 三维模型材质了解一下
  16. 各位观众老爷不如点进来随便评论几句QUQ
  17. MATLAB小波变换图像处理简单示例
  18. mysql master 重置_[数据库]重置mysql主从同步(MySQL Reset Master
  19. python爬虫难点_Python爬虫技巧
  20. 六区哈卡服务器无限公会,魔兽怀旧服:哈卡硬币被改,加声望不加经验,秒升62级是不可能了...

热门文章

  1. 在Windows下的路径分隔符和Linux下的路径分隔符是不一样的
  2. eclipse中支持python
  3. 原生 javascript 操作 websocket
  4. (42)JS运动之多物体框架--多个div变宽
  5. 洛谷 P2010 回文日期
  6. CentOS7/RHEL7 systemd详解
  7. AssionShop开源B2C电子商务系统-概述(转载)
  8. 添加.MSPX文件(VISTA下)
  9. ELK温度监控--lmsensorsbeat
  10. [Codeforces 920E]Connected Components?