算法 比较版本号-(同向双指针)

牛客网: BM22

题目: 字符串以'.'连接,从左到右编号,比较版本号大小

思路: 按'.'切割为字符串数组,双指针p1, p2均初始化为坐标0, 将p1与 p2指向部分转为数字进行比较,如果为空则默认为0不从数组中取字符串,直到p1与p2都达到数组末尾停止。

代码:

// gopackage main
// import "fmt"
import "strings"
import "strconv"/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 比较版本号* @param version1 string字符串 * @param version2 string字符串 * @return int整型
*/
func compare( version1 string ,  version2 string ) int {// write code herev1 := strings.Split(version1, ".")v2 := strings.Split(version2, ".")i, j := 0, 0for ; i < len(v1) || j < len(v2); i,j = i+1, j+1 {ver1 := 0ver2 := 0if i < len(v1) {v, _ := strconv.Atoi(v1[i])ver1 += v}if j < len(v2) {v, _ := strconv.Atoi(v2[i])ver2 += v}if ver1 > ver2 {return 1} else if ver1 < ver2 {return -1}}if i < len(v1) {return 1} else if j < len(v2) {return -1} else {return 0}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89177.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二进制文件和文本文件

二进制文件是在计算机中以二进制格式存储的文件&#xff0c;它包含了一组按照特定格式组织的二进制数据。与之相对的是文本文件&#xff0c;文本文件使用**字符编码&#xff08;ASCII&#xff09;**来表示数据。 以下是一些常见的二进制文件的示例&#xff1a; 图像文件&#…

SpringMVC 学习(五)转发,重定向和传参

6. 转发和重定向 Spring MVC 的底层是 servlet&#xff0c;因此在 Spring MVC 中也存在转发和重定向的概念。 对于转发而言&#xff0c;其目的页面可以在 WEB-INF 目录下。重定向的目的页面不允许在 WEB-INF 目录下&#xff0c;因为重定向相当于用户再次发起一次请求&#xf…

HarmonyOS开发:解决DevEco Studio低版本导入高版本项目运行失败问题

前言 基于DevEco Studio 4.0 Beta2&#xff0c;hvigorVersion为3.0.2&#xff0c;开发了一个项目&#xff0c;上传到了远程仓库&#xff0c;当同事下载后&#xff0c;却始终无法运行&#xff0c;频繁报错&#xff0c;由于API都是使用的9&#xff0c;第一感觉就是开发环境不同&a…

Qt: 鼠标形状设置

设置全局鼠标形状 设置完毕后&#xff0c;整个APP的任何窗体&#xff0c;包括Dialog中的鼠标形状都会被修改为设定类型&#xff0c;某一个控件设定的鼠标形状将被替换。一般不建议使用 QCursor cursor;//创建鼠标对象 cursor.setShape(Qt::CursorShape::ClosedHandCursor);//…

9.25 校招 实习 内推 面经

绿泡*泡&#xff1a; neituijunsir 交流裙 &#xff0c;内推/实习/校招汇总表格 1、校招 | 达闼机器人2024届校园招聘正式启动 校招 | 达闼机器人2024届校园招聘正式启动 2、2023校招总结--自动驾驶规控算法 - 10 2023校招总结--自动驾驶规控算法 - 10 3、校招 | 腾讯北极…

创建线程的4种方法

目录 一.前言 1.关于进程调度 (1)为什么要调度? (2)调度的真正对象 (3)调度的资源 2.线程 (1).线程的写法 (2)线程创建的方法 1.继承Thread (1)使用继承Thread,重写run的方式来创建线程 (2)继承Thread,使用匿名内部类 2.实现Runnable (1)使用实现Runnable,重写run…

算法 数组中的逆序对-(归并排序+递归回溯+双指针)

牛客网: BM20 题目: 求出数组中逆序对总数 思路: 使用归并排序思路&#xff0c;先分裂&#xff0c;再合并&#xff0c;合并的时候&#xff0c;左半段有序&#xff0c;右半段有序&#xff0c;如果左半段某个值大于右半段某个值 data[i] > data[j]&#xff0c; 则可通过j与右…

搭建本地git服务器及详细操作步骤

1.搭建本地git服务器 1.1环境 服务器&#xff1a;Ubuntu18.04 客户端&#xff1a;windows10_x64、Ubuntu20.04 无论是服务端还是客户端都需要先安装git Ubuntu安装方法&#xff1a; sudo apt update sudo apt install gitwindows安装方法&#xff1a; https://blog.csdn…

Android系统之编译Intel5.1问题解决

1.jdk问题: ************************************************************ You are attempting to build with the incorrect version of java.Your version is: openjdk version "1.7.0_75" OpenJDK Runtime Environment (build 1.7.0_75-b13) OpenJDK 64-Bit Se…

微服务线上问题排查困难?不知道问题出在哪一环?那是你还不会分布式链路追踪

咱们以前单体应用里面有很多的应用和功能&#xff0c;依赖各个功能之间相互调用&#xff0c;使用公共的代码包等等&#xff0c;排查问题&#xff0c;使用类似于 gdb/dlv 工具或者直接查看代码日志&#xff0c;进行定位和分析 但是现在我们基本上都是微服务架构了&#xff0c;将…

JavaScript入门——(2)基础语法(上)

一、JavaScript介绍 1.1 JavaScript是什么 1.1.1 JavaScript是什么&#xff1f; JavaScript是一种运行在客户端&#xff08;浏览器&#xff09;的编程语言&#xff0c;实现人机交互效果。 注意&#xff1a;HTML和CSS是标记语言。 1.1.2 作用&#xff08;做什么&#xff1f…

2023最新最详细软件测试技术面试题【含答案】

【软件测试面试突击班】如何逼自己一周刷完软件测试八股文教程&#xff0c;刷完面试就稳了&#xff0c;你也可以当高薪软件测试工程师&#xff08;自动化测试&#xff09; 有这样一个面试题&#xff1a;在一个Web测试页面上&#xff0c;有一个输入框&#xff0c;一个计数器&…

Ubuntu常见问题解决方法

1、网络设置 参考博客&#xff1a;《Ubuntu 22.04 配置静态IP》、《虚拟机上网设置——桥接模式 & NAT模式》&#xff1b; 2、报错&#xff1a;failed to create hard link 参考博客&#xff1a;《Ubuntu中报错&#xff1a;failed to create hard link》&#xff1b; 3、修…

【STM32单片机】u8g2智能风扇设计

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用STM32F103C8T6单片机控制器&#xff0c;使用按键、IIC OLED模块、DS18B20温度传感器、直流电机、红外遥控等。 主要功能&#xff1a; 初始化后进入温度显示界面&#xff0c;系统初始状态为手动…

软件测试工作步骤详情

软件测试步骤按照研发阶段一般分为5个部分&#xff1a;单元测试、集成测试、确认测试、系统测试、验收测试&#xff0c;下面将不同阶段需要的一些工作内容做一下梳理希望可以帮助到大家。 一、单元测试的内容&#xff1a;&#xff08;白盒为主&#xff0c;黑盒为辅&#xff09;…

Android 13.0 framework层系统手势增加上滑手势home事件功能(相当于Home键)

1.概述 在13.0的定制化开发系统手势功能的时候,客户需求要求在上滑手势的时候,在底部上滑时候进入系统桌面,也就是增加 home键功能,所以就需要分析相关的系统手势上滑事件,然后添加home事件这样 就可以实现这个功能了 2.framework层系统手势增加上滑手势home事件功能的核…

热启动和冷启动是什么,区别

app冷启动&#xff1a; 当应用启动时&#xff0c;后台没有该应用的进程&#xff0c;这时系统会重新创建一个新的进程分配给该应用&#xff0c; 这个启动方式就叫做冷启动&#xff08;后台不存在该应用进程&#xff09;。冷启动因为系统会重新创建一个新的进程分配给它&#xff…

Ubuntu 安装 CUDA 与 CUDNN GPU加速引擎

一、NVIDIA&#xff08;英伟达&#xff09;显卡驱动安装 NVIDIA显卡驱动可以通过指令sudo apt purge nvidia*删除以前安装的NVIDIA驱动版本&#xff0c;重新安装。 1.1. 关闭系统自带驱动nouveau 注意&#xff01;在安装NVIDIA驱动以前需要禁止系统自带显卡驱动nouveau&#xf…

Diffusion Autoencoders: Toward a Meaningful and Decodable Representation

Diffusion Autoencoders: Toward a Meaningful and Decodable Representation (Paper reading) Konpat Preechakul, VISTEC, Thailand, CVPR22 Oral, Cited:117, Code, Paper 1. 前言 扩散概率模型 (DPM) 在图像生成方面取得了显着的质量&#xff0c;可与 GAN 相媲美。但是与…

独立站引流,如何在Reddit进行营销推广?

Reddit是目前最被忽视却最具潜力的社交媒体营销平台之一&#xff0c;它相当于国内的百度贴吧&#xff0c;是美国最大的论坛&#xff0c;也是美国第五大网站&#xff0c;流量仅次于Google、Youtube、Facebook以及亚马逊。 如果会玩&#xff0c;Reddit也可以跟其他的社交媒体营销…