当前位置:首页 > 编程笔记 > 正文
已解决

算法-版本号升级

来自网友在路上 166866提问 提问时间:2023-09-27 05:31:32阅读次数: 66

最佳答案 问答题库668位专家为你答疑解惑

背景

今天看到了一个工具类AutoUpgradeVersionUtil,觉得很有意思,大体的作用是版本号的升级,类似于从0.0.1-> 0.0.2这样的。我一想,我之前刷算法的时候这样的案例遇到的多着呢,还有很多种的变种!

  • 数字+1
  • 大数的加法
  • 链表合并

这两种场景是我觉得很熟悉的,本着不放过这个问题的原则,我开始了DIY实现一下。本篇文章中,shigen将展示Java代码和python代码的实现。

问题拆解

为了方便描述,shigen画了一个草图:

类似于我们的+1运算,先将版本号的每一位提取出来,然后从最后一位+1,如果+1之后的数小于10,则保留,大于10,该位置1。说起来很简单,但是实践起来却是是有一点点的复杂,这里,shigen选取的是递归的思想。

其实3-17行的递归是需要好好理解一下的,shigen在初次看到这个的时候也是一脸的懵,最后想了一下想明白了。

最后预期的输出结果是:2.0.0

那Java的写法其实是有点复杂的,特别是去处理字符串的时候。python肯定要简洁一些,现在shigen采用python代码实现一下。

其实比较起来,都差不多,提供两种编程语言的实现吧。

好了,以上就是《算法-版本号升级》的全部内容了,觉得不错的话,记得点赞、在看、转发、关注哈,感谢您的支持。

shigen一起,每天不一样!

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"算法-版本号升级":http://eshow365.cn/6-14434-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!