
数据结构,计算语句频度
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)] 不懂怎么算出来的 展开
for(j=1;j<=i;j++){
for(k=1;k<=j;k++)
x+=delta; //这个语句的频度如何计算,求具体方法
}
答案是1/12[n(n+1)(2n+3)] 不懂怎么算出来的 展开
1个回答
展开全部
对于上面的频度,因为是一个三重循环,所以列一个表给你吧,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】
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 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询