本文將為大家詳細(xì)介紹“java如何判斷遞增的三元子序列”,內(nèi)容步驟清晰詳細(xì),細(xì)節(jié)處理妥當(dāng),而小編每天都會(huì)更新不同的知識(shí)點(diǎn),希望這篇“java如何判斷遞增的三元子序列”能夠給你意想不到的收獲,請(qǐng)大家跟著小編的思路慢慢深入,具體內(nèi)容如下,一起去收獲新知識(shí)吧。
成都創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)肥東,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
給定一個(gè)未排序的數(shù)組,判斷這個(gè)數(shù)組中是否存在長(zhǎng)度為 3 的遞增子序列。
數(shù)學(xué)表達(dá)式如下:
1,如果存在這樣的 i, j, k, 且滿足 0 ≤ i < j < k ≤ n-1,
2,使得 arr[i] < arr[j] < arr[k] ,返回 true ; 否則返回 false 。
說明: 要求算法的時(shí)間復(fù)雜度為 O(n),空間復(fù)雜度為 O(1) 。
示例 1:
輸入: [1,2,3,4,5]
輸出: true
示例 2:
輸入: [5,4,3,2,1]
輸出: false
答案:
1public boolean increasingTriplet(int[] nums) {
2 int min = Integer.MAX_VALUE, secondMin = Integer.MAX_VALUE;
3 for (int num : nums) {
4 if (num <= min)
5 min = num;
6 else if (num < secondMin)
7 secondMin = num;
8 else if (num > secondMin)
9 return true;
10 }
11 return false;
12}
解析:
使用兩個(gè)變量即可,當(dāng)num小于min的時(shí)候?qū)in重新賦值,代碼很容易理解,沒什么難度。如果我們不使用Integer.MAX_VALUE,我們還可以這樣寫
1public boolean increasingTriplet(int[] nums) {
2 if (nums == null || nums.length < 3)
3 return false;
4 Integer num1 = nums[0], num2 = null;
5 for (int i = 1; i < nums.length; i++) {
6 if (nums[i] <= num1)
7 num1 = nums[i];
8 else {
9 if (num2 != null && nums[i] > num2)
10 return true;
11 num2 = nums[i];
12 }
13 }
14 return false;
15}
使用Integer,如果為空的話就表示沒有賦值。
Java的特點(diǎn)有哪些 1.Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,實(shí)現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程。 2.Java具有簡(jiǎn)單性、面向?qū)ο?、分布式、安全性、平臺(tái)獨(dú)立與可移植性、動(dòng)態(tài)性等特點(diǎn)。 3.使用Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
感謝您能讀到這里,小編希望您對(duì)“java如何判斷遞增的三元子序列”這一關(guān)鍵問題有了從實(shí)踐層面最深刻的體會(huì),具體使用情況還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想閱讀更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
當(dāng)前標(biāo)題:java如何判斷遞增的三元子序列
瀏覽地址:http://aaarwkj.com/article4/ipoeoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、建站公司、軟件開發(fā)、自適應(yīng)網(wǎng)站、微信小程序、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)