作者H45 (!H45)
看板java
标题Re: [问题] 关於List和ArrayList的应用
时间Wed Jun 24 20:08:11 2009
※ 引述《KennyKuo (24岁了 吉他还是弱)》之铭言:
: 我也不确定是不是应该用List或是ArrayList,
: 刚刚试了很久都想不通该怎麽写出我想计算的东西。
: 我的问题是在计算一个[分散程度]的问题:
: 假设有个List大小为9,内含的物件(字串)分别为A A A A B B C C C,
: 因为相同的A有4笔,B有2笔,C有3笔,是故,
: 其分散程度则为 1 - [(4/9)^2 + (2/9)^2 + (3/9)^2]
: 请问我该如何写成程式呢???
: JAVA新兵跪求高手指导Orz
: 只要告诉我该使用的class、method与程式逻辑就好,不用po出程式码。
: 拜托了T___T
输入:S 字串
输出:ret 分散程度
演算法:
01 ret := 1
02 N(S) := 0
03
04 for each s in S
05 N(s) := N(s) + 1
06 end for
07
08 for each index of N
09 ret := ret - (N(index) / (length of S)) ^ 2
10 end for
-----------------------------------------------------
<实例>
输入:S = {a, a, a, a, b, b, c, c, c}
到 03 行的时候,ret = 1, N(a) = 0, N(b) = 0, N(c) = 0
到 07 行的时候,ret = 1, N(a) = 4, N(b) = 2, N(c) = 3
到 10 行之後,ret ≒ 0.642
-----------------------------------------------------
我看一下,这个程式可以用 hashtable 或 hashmap 来算。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.247.13
1F:推 KennyKuo:太感谢你了Orz 我马上去写写看^^ 06/24 20:22