国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

臨西網(wǎng)站建設(shè)google收錄提交入口

臨西網(wǎng)站建設(shè),google收錄提交入口,質(zhì)量好的購物平臺,小程序怎么做微網(wǎng)站鏈接一、一維數(shù)組的動態(tài)和二、將數(shù)字變成 0 的操作次數(shù)三、最富有的客戶資產(chǎn)總量四、Fizz Buzz五、鏈表的中間結(jié)點六、贖金信一、一維數(shù)組的動態(tài)和 給你一個數(shù)組 nums 。數(shù)組「動態(tài)和」的計算公式為:runningSum[i] sum(nums[0]…nums[i]) 。 請返回 nums 的動態(tài)和。 示…

  • 一、一維數(shù)組的動態(tài)和
  • 二、將數(shù)字變成 0 的操作次數(shù)
  • 三、最富有的客戶資產(chǎn)總量
  • 四、Fizz Buzz
  • 五、鏈表的中間結(jié)點
  • 六、贖金信

一、一維數(shù)組的動態(tài)和

給你一個數(shù)組 nums 。數(shù)組「動態(tài)和」的計算公式為:runningSum[i] = sum(nums[0]…nums[i]) 。
請返回 nums 的動態(tài)和。

示例 1:
輸入:nums = [1,2,3,4]
輸出:[1,3,6,10]
解釋:動態(tài)和計算過程為 [1, 1+2, 1+2+3, 1+2+3+4] 。

示例 2:
輸入:nums = [1,1,1,1,1]
輸出:[1,2,3,4,5]
解釋:動態(tài)和計算過程為 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1] 。

我的解法:

class Solution {public int[] runningSum(int[] nums) {//計算數(shù)組長度,生成相同長度的數(shù)組int[] arr = new int[nums.length];//通過計算公式,得出新數(shù)組每個元素上的數(shù)據(jù)int i = 0;for(i = 0; i < nums.length; i++) {int j = 0;int count = 0;for(j = 0; j < i; j++) {count += nums[j];}arr[i] = nums[j] + count;}return arr;}
}

大佬解法一: 數(shù)組第一元素不變,其它累加上去。

class Solution {public int[] runningSum(int[] nums) {for(int i=1; i<nums.length; i++) {nums[i] += nums[i-1];}return nums;}
}

大佬解法二:

class Solution {public int[] runningSum(int[] nums) {for(int i=1; i<nums.length; i++) {nums[i] = nums[i-1] + nums[i];}return nums;}
}

二、將數(shù)字變成 0 的操作次數(shù)

給你一個非負整數(shù) num ,請你返回將它變成 0 所需要的步數(shù)。 如果當前數(shù)字是偶數(shù),你需要把它除以 2 ;否則,減去 1 。

示例 1:
輸入:num = 14
輸出:6
解釋:
步驟 1) 14 是偶數(shù),除以 2 得到 7 。
步驟 2) 7 是奇數(shù),減 1 得到 6 。
步驟 3) 6 是偶數(shù),除以 2 得到 3 。
步驟 4) 3 是奇數(shù),減 1 得到 2 。
步驟 5) 2 是偶數(shù),除以 2 得到 1 。
步驟 6) 1 是奇數(shù),減 1 得到 0 。

示例 2:
輸入:num = 8
輸出:4
解釋:
步驟 1) 8 是偶數(shù),除以 2 得到 4 。
步驟 2) 4 是偶數(shù),除以 2 得到 2 。
步驟 3) 2 是偶數(shù),除以 2 得到 1 。
步驟 4) 1 是奇數(shù),減 1 得到 0 。

我的解法:

class Solution {public int numberOfSteps(int num) {int count = 0;while(num != 0) {count += 1;if(num % 2 == 0) {num /= 2;} else {num -= 1;}}return count;}
}

大佬解法: 用位運算和三元運算符。

class Solution {public static int numberOfSteps(int num) {  //14int ret = 0;while (num > 0) {  // ret = ret + [(num > 1 ? 1 : 0) + (num & 0x01)]// ret=1,num=7; ret=3,num=3; ret=5,num=1; ret=6,num=0.ret += (num > 1 ? 1 : 0) + (num & 0x01);num >>= 1;}return ret;}
}

我的解法優(yōu)化: 吸取一絲大佬的思路

class Solution {public static int numberOfSteps(int num) {  //14int ret = 0;while(num != 0) {ret++;if(num % 2 == 0) {num >>= 1;}else if (num % 2 == 1) {num -= 1;}}return ret;}
}

三、最富有的客戶資產(chǎn)總量

給你一個 m x n 的整數(shù)網(wǎng)格 accounts ,其中 accounts[i][j] 是第 i???????????? 位客戶在第 j 家銀行托管的資產(chǎn)數(shù)量。返回最富有客戶所擁有的 資產(chǎn)總量 。
客戶的 資產(chǎn)總量 就是他們在各家銀行托管的資產(chǎn)數(shù)量之和。最富有客戶就是 資產(chǎn)總量 最大的客戶。

示例 1:
輸入:accounts = [[1,2,3],[3,2,1]]
輸出:6
解釋:
第 1 位客戶的資產(chǎn)總量 = 1 + 2 + 3 = 6
第 2 位客戶的資產(chǎn)總量 = 3 + 2 + 1 = 6
兩位客戶都是最富有的,資產(chǎn)總量都是 6 ,所以返回 6 。

示例 2:
輸入:accounts = [[1,5],[7,3],[3,5]]
輸出:10
解釋:
第 1 位客戶的資產(chǎn)總量 = 6
第 2 位客戶的資產(chǎn)總量 = 10
第 3 位客戶的資產(chǎn)總量 = 8
第 2 位客戶是最富有的,資產(chǎn)總量是 10

我的解法:

class Solution {public int maximumWealth(int[][] accounts) {int max = 0;for(int i=0; i<accounts.length; i++) {int count = 0;for(int j=0; j<accounts[i].length; j++) {count += accounts[i][j];}if(max < count) {max = count;}}return max;}
}

大佬解法: 大佬總是會用上最高逼格的解法…

class Solution {public int maximumWealth(int[][] accounts) {int max = Integer.MIN_VALUE;for(int[] account : accounts) {max = Math.max(max, Arrays.stream(account).sum());}return max;}
}

四、Fizz Buzz

給你一個整數(shù) n ,找出從 1 到 n 各個整數(shù)的 Fizz Buzz 表示,并用字符串數(shù)組 answer(下標從 1 開始)返回結(jié)果,其中:
answer[i] == “FizzBuzz” 如果 i 同時是 3 和 5 的倍數(shù)。
answer[i] == “Fizz” 如果 i 是 3 的倍數(shù)。
answer[i] == “Buzz” 如果 i 是 5 的倍數(shù)。
answer[i] == i (以字符串形式)如果上述條件全不滿足。

示例 1:
輸入:n = 3
輸出:[“1”,“2”,“Fizz”]

示例 2:
輸入:n = 5
輸出:[“1”,“2”,“Fizz”,“4”,“Buzz”]

示例 3:
輸入:n = 15
輸出:[“1”,“2”,“Fizz”,“4”,“Buzz”,“Fizz”,“7”,“8”,“Fizz”,“Buzz”,“11”,“Fizz”,“13”,“14”,“FizzBuzz”]

我的解法:

class Solution {public List<String> fizzBuzz(int n) {List<String> 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(Integer.toString(i));}}return list;}
}

想不到如此簡單的一個題目,有大佬能講出這么多道理:https://jtong.dev/2020/01/02/programmer-dojo/fizzbuzz-tdd/.

我的解法優(yōu)化: 性能上提升了一點點…

class Solution {public List<String> fizzBuzz(int n) {List<String> list = new ArrayList<>();for(int i=1; i<=n; i++) {if((i%3==0) && (i%5==0)) {list.add("FizzBuzz");continue;}else if(i%3==0) {list.add("Fizz");continue;}else if(i%5==0) {list.add("Buzz");continue;}else {list.add(Integer.toString(i));continue;}}return list;}
}

五、鏈表的中間結(jié)點

給定一個頭結(jié)點為 head 的非空單鏈表,返回鏈表的中間結(jié)點。
如果有兩個中間結(jié)點,則返回第二個中間結(jié)點。

示例 1:
輸入:[1,2,3,4,5]
輸出:此列表中的結(jié)點 3 (序列化形式:[3,4,5])
返回的結(jié)點值為 3 。 (測評系統(tǒng)對該結(jié)點序列化表述是 [3,4,5])。
注意,我們返回了一個 ListNode 類型的對象 ans,這樣:
ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.next.next = NULL.

示例 2:
輸入:[1,2,3,4,5,6]
輸出:此列表中的結(jié)點 4 (序列化形式:[4,5,6])
由于該列表有兩個中間結(jié)點,值分別為 3 和 4,我們返回第二個結(jié)點。

我的解法:

class Solution {public ListNode middleNode(ListNode head) {ListNode fast = head;ListNode slow = head;while((fast.next != null) && (fast.next.next != null)) {fast = fast.next.next;slow = slow.next;}if(fast.next == null) {return slow;}return slow.next;}
}

六、贖金信

給你兩個字符串:ransomNote 和 magazine ,判斷 ransomNote 能不能由 magazine 里面的字符構(gòu)成。如果可以,返回 true ;否則返回 false 。magazine 中的每個字符只能在 ransomNote 中使用一次。
提示:
1 <= ransomNote.length, magazine.length <= 105
ransomNote 和 magazine 由小寫英文字母組成

示例 1:
輸入:ransomNote = “a”, magazine = “b”
輸出:false

示例 2:
輸入:ransomNote = “aa”, magazine = “ab”
輸出:false

示例 3:
輸入:ransomNote = “aa”, magazine = “aab”
輸出:true

我的解法:

class Solution {public static boolean canConstruct(String ransomNote, String magazine) {// 創(chuàng)建個新數(shù)組,有 26 個元素位置int[] arr = new int[26];// 創(chuàng)建變量 i,遍歷字符串 magazineint i = 0;for (i=0; i<magazine.length(); i++) {// 取 magazine 字符串的頭元素 tmp,減去 'a',得出該放在哪個元素位置int tmp = magazine.charAt(i) - 'a';arr[tmp] += 1;}// 創(chuàng)建變量 j,遍歷字符串 ransomNoteint j = 0;for (j=0; j<ransomNote.length(); j++) {// 取 ransomNote 字符串的頭元素 tmp,減去 'a',再減去新數(shù)組中該元素的個數(shù)。int tmp = ransomNote.charAt(j) - 'a';arr[tmp] -= 1;// 然后判斷,是否會遇到新數(shù)組中元素為 -1 的情況,遇到就是 falseif (arr[tmp] < 0) {return false;}}// 最后遍歷結(jié)束,結(jié)果為 truereturn true;}
}
http://aloenet.com.cn/news/41554.html

相關(guān)文章:

  • 天河企業(yè)網(wǎng)站建設(shè)青島網(wǎng)站建設(shè)有限公司
  • 群暉wordpress中文鄭州網(wǎng)站關(guān)鍵詞優(yōu)化公司哪家好
  • 深圳市龍華區(qū)房價萬能優(yōu)化大師下載
  • 東營網(wǎng)站建設(shè)收益高恩城seo的網(wǎng)站
  • 做淘寶的網(wǎng)站企業(yè)網(wǎng)站營銷的優(yōu)缺點
  • 唐山設(shè)計網(wǎng)站公司達內(nèi)教育
  • 明星做av網(wǎng)站百度郵箱注冊入口
  • 廣州市企業(yè)網(wǎng)站建設(shè)企業(yè)網(wǎng)絡(luò)推廣都是收費
  • 學校網(wǎng)站怎么做推廣千博企業(yè)網(wǎng)站管理系統(tǒng)
  • 鄭州移動網(wǎng)站建設(shè)sem和seo有什么區(qū)別
  • 三門峽市湖濱區(qū)建設(shè)局網(wǎng)站巨量算數(shù)數(shù)據(jù)分析
  • 免費網(wǎng)站收錄入口百度云搜索引擎入口官網(wǎng)
  • 網(wǎng)站開發(fā)通常叫什么部門如何做市場推廣方案
  • 自己開加工廠怎么找訂單東莞seo優(yōu)化團隊
  • vr軟件開發(fā)需要學什么優(yōu)化推廣網(wǎng)站淄博
  • 南京溧水城市建設(shè)集團網(wǎng)站跨境電商網(wǎng)站開發(fā)
  • java答題對戰(zhàn)網(wǎng)站開發(fā)seo優(yōu)化服務(wù)商
  • vue做的小網(wǎng)站大興今日頭條新聞
  • 做web網(wǎng)站常用框架東莞網(wǎng)絡(luò)營銷推廣專業(yè)
  • 做網(wǎng)站后有人搶注品牌關(guān)鍵字開魯視頻
  • 阿里云上做網(wǎng)站靠譜嗎網(wǎng)絡(luò)優(yōu)化工程師證書
  • 建設(shè)銀行信用卡中心網(wǎng)站咸陽網(wǎng)站建設(shè)公司
  • 小程序登錄后臺seo聯(lián)盟
  • 網(wǎng)站網(wǎng)址有哪些臨沂seo整站優(yōu)化廠家
  • 網(wǎng)站制作公司源碼北京百度競價托管
  • 深圳做網(wǎng)站的給說網(wǎng)店推廣有哪些
  • 做網(wǎng)站最好最佳的資源搜索引擎
  • 環(huán)保網(wǎng)站查詢碾米是否做備案做個網(wǎng)站需要多少錢
  • jsp網(wǎng)站開發(fā)實例教程北京廈門網(wǎng)站優(yōu)化
  • 廈門網(wǎng)站流量優(yōu)化價格app推廣平臺放單平臺