推荐一个网站www.hackerrank.com,小白们可以根据里面的题库练习,提高自己编程的知识和技能。


废话不多说,本文主要记录hackerrank刷题之Statistics—Standard Deviation。



hackerrank刷题【2】之Standard Deviation_java题目要求

给定一个整数数组,计算并输出标准差。 答案应该是十进制形式,四舍五入到1位小数,答案的误差范围是±0.1。


hackerrank刷题【2】之Standard Deviation_java_02输入

hackerrank刷题【2】之Standard Deviation_java_03

第一行表示一个整数,表示数组中的元素数。

第二行描述的是数组元素,即用空格分隔的整数


hackerrank刷题【2】之Standard Deviation_java_04解题思路

1、标准差的公式如下

hackerrank刷题【2】之Standard Deviation_java_05

2、将输入的数字字符串转换为数组

例如输入的是1 2 3 4

# 对于字符串,先使用split方法按空格进行分割,结果为:['1', '2', '3', '4']

# 然后map函数将int函数迭代作用到每个元素上,最后用list使其成为一个整型数组

 nums = list(map(int, input() .split()))


3、根据公式求方差,标准差即方差的平方根

均值

miu=sum(nums)/n

方差

var=sum([((x-miu)**2for x in nums])/n

标准差


std=var**0.5


4、结果取1位小数

round()内置方法


hackerrank刷题【2】之Standard Deviation_java_06code 







n=int(input())nums=list(map(int,input().split()))miu=sum(nums)/nvar=sum([((x-miu)**2) for x in nums])/nstd=var**0.5print (round(std,1))

hackerrank刷题【2】之Standard Deviation_java_06输出

hackerrank刷题【2】之Standard Deviation_java_08