Java面試題目錄
算法:給你一個(gè)整數(shù)數(shù)組 nums 和一個(gè)整數(shù)k,請你統(tǒng)計(jì)并返回該數(shù)組中和為 k 的子數(shù)組的個(gè)數(shù)
使用前綴和來實(shí)現(xiàn)。在保存累加和的數(shù)組preSum中,找坐標(biāo)大的元素與坐標(biāo)小的元素差值正好為k的個(gè)數(shù)。
leecode地址:. - 力扣(LeetCode)
直接在力扣找了個(gè)寫好的答案。文章來源:http://www.zghlxwxcb.cn/news/detail-819726.html
public class Solution {
public int subarraySum(int[] nums, int k) {
int len = nums.length;
// 計(jì)算前綴和數(shù)組
int[] preSum = new int[len + 1];
preSum[0] = 0;
for (int i = 0; i < len; i++) {
preSum[i + 1] = preSum[i] + nums[i];
}
int count = 0;
for (int left = 0; left < len; left++) {
for (int right = left; right < len; right++) {
// 區(qū)間和 [left..right],注意下標(biāo)偏移
if (preSum[right + 1] - preSum[left] == k) {
count++;
}
}
}
return count;
}
}
作者:liweiwei1419
鏈接:https://leetcode.cn/problems/subarray-sum-equals-k/solutions/247577/bao-li-jie-fa-qian-zhui-he-qian-zhui-he-you-hua-ja/
來源:力扣(LeetCode)
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。文章來源地址http://www.zghlxwxcb.cn/news/detail-819726.html
到了這里,關(guān)于算法:給你一個(gè)整數(shù)數(shù)組 nums 和一個(gè)整數(shù)k,請你統(tǒng)計(jì)并返回該數(shù)組中和為 k 的子數(shù)組的個(gè)數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!