数据结构,计算语句频度

for(i=1;i<=n;i++){for(j=1;j<=i;j++){for(k=1;k<=j;k++)x+=delta;//这个语句的频度如何计算,求具体方法}答案是... for(i=1;i<=n;i++){
for(j=1;j<=i;j++){
for(k=1;k<=j;k++)
x+=delta; //这个语句的频度如何计算,求具体方法
}
答案是1/12[n(n+1)(2n+3)] 不懂怎么算出来的
展开
 我来答
punk_121
2011-07-25
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
对于上面的频度,因为是一个三重循环,所以列一个表给你吧,k表示语句@执行的次数:

i j k
1 1 1
2 1~2 1+(1+2)
3 1~3 1+(1+2)+(1+2+3)
4 1~4 1+(1+2)+(1+2+3)+(1+2+3+4)
. . .
. . .
. . .
n 1~n 1+(1+2)+(1+2+3)+(1+2+3+4)+....(1+2+...+n)

可以列出求和公式:Sn=∑(i=1~n) (i+1)*i/2=1/2*[(1+2+.....n)+(1^2+2^2+.......n^2)]
最后用等比数列球和公式和平方求和公式得出语句@的频度为:(n+2)*(n+1)*n/6

【答案转自SGetEternal】
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式