剑指Offer之Java算法习题精讲数组与字符串题

题目一 剑指Offer之Java算法习题精讲数组与字符串题
文章图片

解法

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]; }}

题目二 剑指Offer之Java算法习题精讲数组与字符串题
文章图片

【剑指Offer之Java算法习题精讲数组与字符串题】解法
class Solution {public List fizzBuzz(int n) {ArrayList list =new ArrayList(); 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; }}

题目三 剑指Offer之Java算法习题精讲数组与字符串题
文章图片

解法
class Solution {public char findTheDifference(String s, String t) {int[] q = new int[500]; for(int i = 0; i
题目四 剑指Offer之Java算法习题精讲数组与字符串题
文章图片

解法
class Solution {public int firstUniqChar(String s) {int[] w = new int[60]; for(int i=0; i
题目五 剑指Offer之Java算法习题精讲数组与字符串题
文章图片

解法
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; }}

到此这篇关于剑指Offer之Java算法习题精讲数组与字符串题的文章就介绍到这了,更多相关Java 数组内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读