劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題
題目一
數(shù)組題——查找數(shù)組中數(shù)值
根據(jù)給定的數(shù)組按照指定條件查找其中指定數(shù)值
具體題目如下

解法
class Solution {
public int thirdMax(int[] nums) {
Arrays.sort(nums);
if(nums.length<3){
return nums[nums.length-1];
}
int p = 1;
for(int i =nums.length-2;i>=0;i--){
if(nums[i]==nums[i+1]){
}else{
++p;
if(p==3){
return nums[i];
}
}
}
return nums[nums.length-1];
}
}題目二
數(shù)組題——查找數(shù)組
根據(jù)給定的整數(shù)查找從1到該值中間符合條件的值
具體題目如下

解法
class Solution {
public List<String> fizzBuzz(int n) {
ArrayList<String> list =new ArrayList<String>();
for(int i = 1;i<=n;i++){
if(i%3==0&&i%5==0){
list.add("FizzBuzz");
}else if(i%3==0){
list.add("Fizz");
}else if(i%5==0){
list.add("Buzz");
}else{
list.add(""+i);
}
}
return list;
}
}題目三
字符串題——查找字符串
根據(jù)給定的兩個字符串按照指定條件查找符合條件的元素
具體題目如下

解法
class Solution {
public char findTheDifference(String s, String t) {
int[] q = new int[500];
for(int i = 0;i<s.length();i++){
q[s.charAt(i)] += 1;
}
for(int i = 0;i<t.length();i++){
q[t.charAt(i)]-=1;
if(q[t.charAt(i)]<0){
return t.charAt(i);
}
}
return t.charAt(0);
}
}題目四
字符串題——查找字符串
根據(jù)給定的字符串按條件查找不重復(fù)的字符
具體題目如下

解法
class Solution {
public int firstUniqChar(String s) {
int[] w = new int[60];
for(int i=0;i<s.length();i++){
w[s.charAt(i)-'a']+=1;
}
char z = 'a';
for(int i =0;i<w.length;i++){
if(w[i]==1){
z =(char)(i+'a');
break;
}
}
for(int i=0;i<s.length();i++){
if(w[s.charAt(i)-'a']==1){
return i;
}
}
return -1;
}
}題目五
數(shù)組題——查找數(shù)組中最大連續(xù)1的個數(shù)
根據(jù)給定數(shù)組查找數(shù)組中最大連續(xù)1的個數(shù)
具體題目如下

解法
class Solution {
public int findMaxConsecutiveOnes(int[] nums) {
int maxCount = 0, count = 0;
int n = nums.length;
for (int i = 0; i < n; i++) {
if (nums[i] == 1) {
count++;
} else {
maxCount = Math.max(maxCount, count);
count = 0;
}
}
maxCount = Math.max(maxCount, count);
return maxCount;
}
}到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題的文章就介紹到這了,更多相關(guān)Java 數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot使用@valid進行參數(shù)校驗的流程步驟
SpringBoot 提供了一種方便的方式來進行參數(shù)校驗:使用 Hibernate Validator,Spring Boot 提供了一種方便的方式來進行參數(shù)校驗:使用 Hibernate Validator,所以本文給大家介紹了SpringBoot使用@valid進行參數(shù)校驗的流程步驟,需要的朋友可以參考下2023-09-09
Nacos服務(wù)實例的權(quán)重設(shè)置方式(以及設(shè)置為0時的作用與場景)
這篇文章主要介紹了Nacos服務(wù)實例的權(quán)重設(shè)置方式(以及設(shè)置為0時的作用與場景),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
快速學(xué)會Dubbo的配置環(huán)境及相關(guān)配置
本文主要講解Dubbo的環(huán)境與配置,文中運用大量代碼和圖片講解的非常詳細,需要學(xué)習(xí)或用到相關(guān)知識的小伙伴可以參考這篇文章2021-09-09
springcloud引入spring-cloud-starter-openfeign失敗的解決
這篇文章主要介紹了springcloud?引入spring-cloud-starter-openfeign失敗的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
Java之mybatis使用limit實現(xiàn)分頁案例講解
這篇文章主要介紹了Java之mybatis使用limit實現(xiàn)分頁案例講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
nacos配置中心遠程調(diào)用讀取不到配置文件的解決
這篇文章主要介紹了nacos配置中心遠程調(diào)用讀取不到配置文件的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教。2022-01-01

