leetcode165. 比較版本號 超級重要的細節

比較兩個版本號 version1?和 version2。
如果?version1?>?version2?返回?1,如果?version1?<?version2 返回 -1, 除此之外返回 0。

你可以假設版本字符串非空,并且只包含數字和?. 字符。

?. 字符不代表小數點,而是用于分隔數字序列。

例如,2.5 不是“兩個半”,也不是“差一半到三”,而是第二版中的第五個小版本。

你可以假設版本號的每一級的默認修訂版號為 0。例如,版本號 3.4 的第一級(大版本)和第二級(小版本)修訂號分別為 3 和 4。其第三級和第四級修訂號均為 0。
?

示例?1:

輸入: version1 = "0.1", version2 = "1.1"
輸出: -1
示例 2:

輸入: version1 = "1.0.1", version2 = "1"
輸出: 1
示例 3:

輸入: version1 = "7.5.2.4", version2 = "7.5.3"
輸出: -1
示例?4:

輸入:version1 = "1.01", version2 = "1.001"
輸出:0
解釋:忽略前導零,“01” 和 “001” 表示相同的數字 “1”。
示例 5:

輸入:version1 = "1.0", version2 = "1.0.0"
輸出:0
解釋:version1 沒有第三級修訂號,這意味著它的第三級修訂號默認為 “0”。
?

提示:

版本字符串由以點?(.)?分隔的數字字符串組成。這個數字字符串可能有前導零。
版本字符串不以點開始或結束,并且其中不會有兩個連續的點。

思路:按點分割再比較即可,需要注意的是,Java這個點不能直接分割需要轉義,千萬記住

class Solution {public int compareVersion(String version1, String version2) {String[] v1 = version1.split("\\.");//超級重要的細節String[] v2 = version2.split("\\.");for (int i = 0, j = 0; i < v1.length || j < v2.length; i++, j++) {int n1 = i < v1.length ? Integer.parseInt(v1[i]) : 0;int n2 = j < v2.length ? Integer.parseInt(v2[j]) : 0;if (n1 != n2) {return n1 > n2 ? 1 : -1;}}return 0;//版本是一樣的,返回0}
}

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/444218.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/444218.shtml
英文地址,請注明出處:http://en.pswp.cn/news/444218.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

游戲服務器緩存系統如何設計

前言 不管是在業界開源領域,還是內部分享中,很少會有專門針對游戲業務特征進行專門設計的組件、類庫或者框架。我們從游戲的客戶端方面來看,一款專業的游戲客戶端引擎,已經是游戲開發的標配,flash,Cocos,Unity,Unreal等,但是服務器端,我們幾乎找不到同樣重量級的產品…

leetcode574. 當選者(SQL)

表: Candidate -------------- | id | Name | -------------- | 1 | A | | 2 | B | | 3 | C | | 4 | D | | 5 | E | -------------- 表: Vote ------------------- | id | CandidateId | ------------------- | 1 | 2…

使用KCP 加速游戲消息,讓全球玩家流暢聯網

定義 kcp協議是傳輸層的一個具有可靠性的傳輸層ARQ協議。 它的設計是為了解決在網絡擁堵情況下tcp協議的網絡速度慢的問題。 kcp力求在保證可靠性的情況下提高傳輸速度。 kcp協議的關注點主要在控制數據的可靠性和提高傳輸速度上面,因此kcp沒有規定下層傳輸協議,一般用udp作為…

leetcode584. 尋找用戶推薦人(SQL)

給定表 customer &#xff0c;里面保存了所有客戶信息和他們的推薦人。 ----------------------- | id | name | referee_id| ----------------------- | 1 | Will | NULL | | 2 | Jane | NULL | | 3 | Alex | 2 | | 4 | Bill | NULL | …

剖析KCP以及KCP在游戲中是如何使用的

親愛的各位讀者你們好,由于前段時間忙于部分項目的重構和優化,未能及時更新文章,不少讀者催更,哈哈,我還是很開心能抽出時間給大家再來分享下kcp的相關技術內幕,以及之前完善自己的網絡庫增加了KCP的客戶端服務器收發支持(結尾會分享封裝的客戶端服務器C++源碼)。 KCP概…

leetcode585. 2016年的投資(SQL)

寫一個查詢語句&#xff0c;將 2016 年 (TIV_2016) 所有成功投資的金額加起來&#xff0c;保留 2 位小數。 對于一個投保人&#xff0c;他在 2016 年成功投資的條件是&#xff1a; 他在 2015 年的投保額 (TIV_2015) 至少跟一個其他投保人在 2015 年的投保額相同。 他所在的城…

暴雪游戲走后,誰來接盤?對網易有何影響?

11月16日&#xff0c;暴雪娛樂公司宣布&#xff0c;由于與網易的現行許可協議將于2023年1月23日到期&#xff0c;將暫停在中國大陸的大部分暴雪游戲服務。這些暴雪游戲包括《魔獸世界》《爐石傳說》《守望先鋒》《星際爭霸》《魔獸爭霸 III&#xff1a;重制版》《暗黑破壞神 II…

leetcode586. 訂單最多的客戶(SQL)

在表 orders 中找到訂單數最多客戶對應的 customer_number 。 數據保證訂單數最多的顧客恰好只有一位。 表 orders 定義如下&#xff1a; | Column | Type | |-------------------|-----------| | order_number (PK) | int | | customer_number | i…

Oracle中刪除一列

ALTER TABLE TBWORKER DROP COLUMN WTUIJIAN;

leetcode595. 大的國家(SQL)

這里有張 World 表 ---------------------------------------------------------------------- | name | continent | area | population | gdp | ---------------------------------------------------------------------- | Afghanistan …

leetcode596. 超過5名學生的課(SQL)

有一個courses 表 &#xff0c;有: student (學生) 和 class (課程)。 請列出所有超過或等于5名學生的課。 例如,表: --------------------- | student | class | --------------------- | A | Math | | B | English | | C | Math | …

leetcode597. 好友申請 I :總體通過率(SQL)

在 Facebook 或者 Twitter 這樣的社交應用中&#xff0c;人們經常會發好友申請也會收到其他人的好友申請。現在給如下兩個表&#xff1a; 表&#xff1a; friend_request | sender_id | send_to_id |request_date| |-----------|------------|------------| | 1 | 2 …

leetcode543. 二叉樹的直徑

給定一棵二叉樹&#xff0c;你需要計算它的直徑長度。一棵二叉樹的直徑長度是任意兩個結點路徑長度中的最大值。這條路徑可能穿過根結點。 示例 : 給定二叉樹 1 / \ 2 3 / \ 4 5 返回 3, 它的長度是路徑 [4,2,1,3] 或者 [5,2,1,3]…

leetcode580. 統計各專業學生人數(SQL)

一所大學有 2 個數據表&#xff0c;分別是 student 和 department &#xff0c;這兩個表保存著每個專業的學生數據和院系數據。 寫一個查詢語句&#xff0c;查詢 department 表中每個專業的學生人數 &#xff08;即使沒有學生的專業也需列出&#xff09;。 將你的查詢結果按照…

leetcode603. 連續空余座位(SQL)

幾個朋友來到電影院的售票處&#xff0c;準備預約連續空余座位。 你能利用表 cinema &#xff0c;幫他們寫一個查詢語句&#xff0c;獲取所有空余座位&#xff0c;并將它們按照 seat_id 排序后返回嗎&#xff1f; | seat_id | free | |---------|------| | 1 | 1 | …

leetcode607. 銷售員(SQL)

給定 3 個表&#xff1a; salesperson&#xff0c; company&#xff0c; orders。 輸出所有表 salesperson 中&#xff0c;沒有向公司 RED 銷售任何東西的銷售員。 解釋 輸入 表&#xff1a; salesperson ---------------------------------------------------- | sales_id …

leetcode612. 平面上的最近距離(SQL)

表 point_2d 保存了所有點&#xff08;多于 2 個點&#xff09;的坐標 (x,y) &#xff0c;這些點在平面上兩兩不重合。 寫一個查詢語句找到兩點之間的最近距離&#xff0c;保留 2 位小數。 | x | y | |----|----| | -1 | -1 | | 0 | 0 | | -1 | -2 | 最近距離在點 (-1,-…

TCP與UDP特點與區別

TCP/IP協議 IP地址&#xff08;IP Address&#xff09; 計算機分布在世界各地&#xff0c;要想和它們通信&#xff0c;必須要知道確切的位置。確定計算機位置的方式有多種&#xff0c;IP 地址是最常用的&#xff0c;例如&#xff0c;114.114.114.114 是國內第一個、全球第三個…

leetcode613. 直線上的最近距離(SQL)

表 point 保存了一些點在 x 軸上的坐標&#xff0c;這些坐標都是整數。 寫一個查詢語句&#xff0c;找到這些點中最近兩個點之間的距離。 | x | |-----| | -1 | | 0 | | 2 | 最近距離顯然是 1 &#xff0c;是點 -1 和 0 之間的距離。所以輸出應該如下&#xff1a; | …