凤凰彩票「中国」有限公司 2026-06-06: 统计主导元素下标数。用go谈话, 给定一个整数数组 nu

2026-06-06:统计主导元素下标数。用go谈话,给定一个整数数组 nums,长度为 n。咱们称某个位置 i(频繁只辩论 i
你的目的是统计数组中知足上述条目的位置数目,并输出该数目(最右端下标 n-1 对应的元素不参与判断)。
1
1
输入: nums = [5,4,3]。
输出: 2。
解说:
鄙人标 i = 0 处,值 5 是主导元素,因为 5 > average(4, 3) = 3.5。
鄙人标 i = 1 处,值 4 是主导元素,相干于子数组 [3]。
下标 i = 2 不是主导元素,因为它右侧莫得元素。因此谜底是 2。
题目来独力扣3833。
1. 代码逻辑安宁奉行
运转:
• n = 3
• ans = 0
• sufSum = 0(用来累加后缀和,即 i+1 到末尾的和)
轮回 i = n-2 = 1向下到 0:
第一轮 i = 1:
• 先作念 sufSum += nums[i+1]
sufSum = 0 + nums[2] = 0 + 3 = 3
• 后缀长度 len = n-1-i = 3-1-1 = 1
• 查验 nums[1] * len > sufSum?
第二轮 i = 0:
• 先作念 sufSum += nums[i+1]
sufSum = 3 + nums[1] = 3 + 4 = 7
• 后缀长度 len = n-1-i = 3-1-0 = 2
• 查验 nums[0] * len > sufSum?
轮回截至,凤凰彩票中国官网入口复返 ans = 2。
2. 算法中枢重点
• 从右往左遍历,用一个变量 sufSum 累加刻下 i 右边的统统元素和。
• 每次轮回着手先加上 nums[i+1](对 i 来说等于它右侧紧邻的元素,但 sufSum 实质是 i 右边全的和)。
• 这么只需要 O(1) 的独特变量,无谓每次重新野心后缀和。
• 相比时用乘法幸免浮点数运算。
3. 技巧复杂度
• 轮回 n-1 次(从 n-2 到 0),每次轮回 O(1) 操作。
• 总技巧复杂度 O(n)。
4. 空间复杂度
• 除了输入数组,只用了 n, ans, sufSum 几个变量。
• 总数外空间复杂度 O(1)。
Go竣工代码如下:
package main
import (
"fmt"
)
func dominantIndices(nums []int) (ans int) {
n := len(nums)
sufSum := 0
for i := n - 2; i >= 0; i-- {
sufSum += nums[i+1]
if nums[i]*(n-1-i) > sufSum {
ans++
}
}
return
}
func main {
nums := []int{5, 4, 3}
result := dominantIndices(nums)
fmt.Println(result)
}

Python竣工代码如下:
# -*-coding:utf-8-*-
def dominant_indices(nums):
尊龙凯时中国官网入口n = len(nums)
ans = 0
suf_sum = 0
for i in range(n - 2, -1, -1):
suf_sum += nums[i + 1]
if nums[i] * (n - 1 - i) > suf_sum:
ans += 1
return ans
if __name__ == "__main__":
nums = [5, 4, 3]
result = dominant_indices(nums)
print(result)

C++竣工代码如下:
#include
#include
using namespace std;
int dominantIndices(vector& nums) {
int n = nums.size;
int ans = 0;
int sufSum = 0;
for (int i = n - 2; i >= 0; i--) {
sufSum += nums[i + 1];
if (nums[i] * (n - 1 - i) > sufSum) {
ans++;
}
}
return ans;
}
int main {
vector nums = {5, 4, 3};
int result = dominantIndices(nums);
cout
return0;
}

咱们信服东说念主工智能为平素东说念主提供了一种“增强器具”,并勉力于共享全方向的AI学问。在这里,您不错找到最新的AI科普著述、器具评测、擢升效果的秘密以及行业洞悉。
接待柔软“福大大架构师逐日一题”凤凰彩票「中国」有限公司,发音讯可赢得口试贵府,让AI助力您的未来发展。