劍指Offer之Java算法習(xí)題精講數(shù)組與字符串
題目一
?解法
class Solution { public int findLengthOfLCIS(int[] nums) { if(nums.length==1) return 1; int fast = 1; int tmp = 1; int max = Integer.MIN_VALUE; while(fast<nums.length){ if(nums[fast]>nums[fast-1]){ tmp++; max = Math.max(max,tmp); }else{ max = Math.max(max,tmp); tmp = 1; } fast++; } return max; } }
題目二
?解法
class Solution { public boolean validPalindrome(String s) { int left = 0; int right = s.length()-1; while(left<right){ if(s.charAt(left)==s.charAt(right)){ left++; right--; }else{ String tmp = s.substring(left, right + 1); return validPalindrome(tmp,1,tmp.length()-1)||validPalindrome(tmp,0,tmp.length()-2); } } return true; } public boolean validPalindrome(String s, int low, int high) { for (int i = low, j = high; i < j; ++i, --j) { char c1 = s.charAt(i), c2 = s.charAt(j); if (c1 != c2) { return false; } } return true; } }
題目三
?解法
class Solution { public double findMaxAverage(int[] nums, int k) { int w = nums.length-k; int max = Integer.MIN_VALUE; for(int i = 0;i<=w;i++){ int res = 0; for(int j = 0;j<k;j++){ res = nums[i+j]+res; } max = Math.max(max,res); } double ans = (double)max/k; return ans; } }
題目四
解法
class Solution { public int findShortestSubArray(int[] nums) { int[] n = new int[50001]; for(int i = 0;i<nums.length;i++){ n[nums[i]]+=1; } int max = Integer.MIN_VALUE; ArrayList<Integer> list = new ArrayList<Integer>(); for(int i = 0;i<n.length;i++){ max = Math.max(n[i],max); } for(int i = 0;i<n.length;i++){ if(n[i]==max){ list.add(i); } } int min = Integer.MAX_VALUE; for(int i = 0;i<list.size();i++){ int res = list.get(i); int left = 0; int right = nums.length-1; while(nums[left]!=res){ left++; } while(nums[right]!=res){ right--; } min = Math.min(min,right-left+1); } return min; } }
到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講數(shù)組與字符串的文章就介紹到這了,更多相關(guān)Java 數(shù)組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 劍指Offer之Java算法習(xí)題精講數(shù)組查找與字符串交集
- 劍指Offer之Java算法習(xí)題精講鏈表與字符串及數(shù)組
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題
- 劍指Offer之Java算法習(xí)題精講N叉樹的遍歷及數(shù)組與字符串
- 劍指Offer之Java算法習(xí)題精講數(shù)組與列表的查找及字符串轉(zhuǎn)換
- 劍指Offer之Java算法習(xí)題精講字符串操作與數(shù)組及二叉搜索樹
- 關(guān)于java數(shù)組與字符串相互轉(zhuǎn)換的問題
- java 字符串轉(zhuǎn)化為字符數(shù)組的3種實(shí)現(xiàn)案例
- Java數(shù)組與字符串深入探索使用方法
相關(guān)文章
SpringBoot中的@Configuration注解詳解
這篇文章主要介紹了SpringBoot中的@Configuration注解詳解,Spring Boot推薦使用JAVA配置來完全代替XML 配置,JAVA配置就是通過 @Configuration和 @Bean兩個(gè)注解實(shí)現(xiàn)的,需要的朋友可以參考下2023-08-08Javaweb項(xiàng)目啟動(dòng)Tomcat常見的報(bào)錯(cuò)解決方案
Java Web項(xiàng)目啟動(dòng)Tomcat時(shí)可能會(huì)遇到各種錯(cuò)誤,本文就來介紹一下Javaweb項(xiàng)目啟動(dòng)Tomcat常見的報(bào)錯(cuò)解決方案,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02Java SpringMVC數(shù)據(jù)響應(yīng)超詳細(xì)講解
Spring?MVC?是?Spring?提供的一個(gè)基于?MVC?設(shè)計(jì)模式的輕量級(jí)?Web?開發(fā)框架,本質(zhì)上相當(dāng)于?Servlet,Spring?MVC?角色劃分清晰,分工明細(xì),本章來講解SpringMVC數(shù)據(jù)響應(yīng)2022-04-04jetbrain?fleet對(duì)標(biāo)vscode實(shí)際操作
Gradle是一個(gè)基于Apache Ant和Apache Maven概念項(xiàng)目自動(dòng)化構(gòu)建開源工具,jetbrain家的fleet(已獲得預(yù)覽權(quán)限)直接對(duì)標(biāo)vscode?,?fleet有望超過vscode嗎?今天我們實(shí)際操作下2021-12-12Spring中@PropertySource注解使用場(chǎng)景解析
這篇文章主要介紹了Spring中@PropertySource注解使用場(chǎng)景解析,@PropertySource注解就是Spring中提供的一個(gè)可以加載配置文件的注解,并且可以將配置文件中的內(nèi)容存放到Spring的環(huán)境變量中,需要的朋友可以參考下2023-11-11