劍指Offer之Java算法習(xí)題精講求和篇
更新時(shí)間:2022年03月18日 11:28:05 作者:明天一定.
跟著思路走,之后從簡(jiǎn)單題入手,反復(fù)去看,做過(guò)之后可能會(huì)忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會(huì)發(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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題
- 劍指Offer之Java算法習(xí)題精講字符串與二叉搜索樹(shù)
- 劍指Offer之Java算法習(xí)題精講N叉樹(shù)的遍歷及數(shù)組與字符串
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串
- 劍指Offer之Java算法習(xí)題精講數(shù)組與列表的查找及字符串轉(zhuǎn)換
- 劍指Offer之Java算法習(xí)題精講字符串操作與數(shù)組及二叉搜索樹(shù)
- 劍指Offer之Java算法習(xí)題精講二叉搜索樹(shù)與數(shù)組查找
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符和等差數(shù)列
- 劍指Offer之Java算法習(xí)題精講二叉搜索樹(shù)與數(shù)組查找
相關(guān)文章
Java行為型設(shè)計(jì)模式之外觀設(shè)計(jì)模式詳解
外觀模式為多個(gè)復(fù)雜的子系統(tǒng),提供了一個(gè)一致的界面,使得調(diào)用端只和這個(gè)接口發(fā)生調(diào)用,而無(wú)須關(guān)系這個(gè)子系統(tǒng)內(nèi)部的細(xì)節(jié)。本文將通過(guò)示例詳細(xì)為大家講解一下外觀模式,需要的可以參考一下2022-11-11
Java aop面向切面編程(aspectJweaver)案例詳解
這篇文章主要介紹了Java aop面向切面編程(aspectJweaver)案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
postman中參數(shù)和x-www-form-urlencoded傳值的區(qū)別及說(shuō)明
在Postman中,參數(shù)傳遞有多種方式,其中params和x-www-form-urlencoded最為常用,Params主要用于URL中傳遞查詢參數(shù),適合GET請(qǐng)求和非敏感數(shù)據(jù),其特點(diǎn)是將參數(shù)作為查詢字符串附加在URL末尾,適用于過(guò)濾和排序等操作2024-09-09

