劍指Offer之Java算法習(xí)題精講求和篇
更新時間:2022年03月18日 11:28:05 作者:明天一定.
跟著思路走,之后從簡單題入手,反復(fù)去看,做過之后可能會忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化
題目一?
?解法
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */ class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { ListNode node = new ListNode(-1); ListNode ans = node; int carry = 0; while (l1 != null || l2 != null) { int n1 = l1 != null ? l1.val : 0; int n2 = l2 != null ? l2.val : 0; int sum = n1+n2+carry; carry = 0; node.next = new ListNode(sum%10); node = node.next; if(sum/10>=1){ carry = 1; } if(l1!=null){ l1 = l1.next; } if(l2!=null){ l2 = l2.next; } } if(carry>=1){ node.next = new ListNode(1); } return ans.next; } }
第二題
?解法
class Solution { public int lengthOfLongestSubstring(String s) { Set<Character> occ = new HashSet<Character>(); int rk = -1, ans = 0; for(int i = 0;i<s.length();i++){ if (i != 0) { occ.remove(s.charAt(i - 1)); } while(rk+1<s.length()&&!occ.contains(s.charAt(rk + 1))){ occ.add(s.charAt(rk + 1)); ++rk; } ans = Math.max(ans, rk - i + 1); } return ans; } }
第三題
?解法
class Solution { public int sumOfUnique(int[] nums) { int sum = 0; int[] arr = new int[101]; for(int i = 0;i<nums.length;i++){ arr[nums[i]]+=1; } for(int i = 0;i<arr.length;i++){ if(arr[i]==1){ sum+=i; } } return sum; } }
第四題
?解法
class Solution { public int maxAscendingSum(int[] nums) { if(nums.length==1) return nums[0]; int sum = nums[0]; int max = Integer.MIN_VALUE; for(int i =1;i<nums.length;i++){ if(nums[i]>nums[i-1]){ sum +=nums[i]; max = Math.max(max,sum); }else{ max = Math.max(max,sum); sum = nums[i]; } } return max; } }
到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講求和篇的文章就介紹到這了,更多相關(guān)Java 求和內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題
- 劍指Offer之Java算法習(xí)題精講字符串與二叉搜索樹
- 劍指Offer之Java算法習(xí)題精講N叉樹的遍歷及數(shù)組與字符串
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串
- 劍指Offer之Java算法習(xí)題精講數(shù)組與列表的查找及字符串轉(zhuǎn)換
- 劍指Offer之Java算法習(xí)題精講字符串操作與數(shù)組及二叉搜索樹
- 劍指Offer之Java算法習(xí)題精講二叉搜索樹與數(shù)組查找
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符和等差數(shù)列
- 劍指Offer之Java算法習(xí)題精講二叉搜索樹與數(shù)組查找
相關(guān)文章
處理@PathVariable注解允許參數(shù)為空、允許不傳參數(shù)的問題
這篇文章主要介紹了處理@PathVariable注解允許參數(shù)為空、允許不傳參數(shù)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02springboot執(zhí)行延時任務(wù)之DelayQueue的使用詳解
DelayQueue是一個無界阻塞隊列,只有在延遲期滿時,才能從中提取元素。這篇文章主要介紹了springboot執(zhí)行延時任務(wù)-DelayQueue的使用,需要的朋友可以參考下2019-12-12Spring Boot 參數(shù)校驗的具體實現(xiàn)方式
這篇文章主要介紹了Spring Boot 參數(shù)校驗的具體實現(xiàn)方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06使用sharding-jdbc實現(xiàn)水平分庫+水平分表的示例代碼
本文主要介紹了使用sharding-jdbc實現(xiàn)水平分庫+水平分表,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12SpringMVC Json自定義序列化和反序列化的操作方法
這篇文章主要介紹了SpringMVC Json自定義序列化和反序列化的操作方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01