查看: 1105|回复: 0
收起左侧

[已解决] 跪求高手解答数据结构问题

 关闭 [复制链接]
menghuann0
发表于 2009-10-22 19:20:00 | 显示全部楼层 |阅读模式
第一题:i=1;   

              while(i<=n)

                      i=i*2;              (1)

设语句(1)的频度为f(n),则有:

2^f(n)<=n, 即f(n)<=log  n,
                                            2
取最大值f(n)=log  n.
                       2
请问2^f(n)<=n是怎样得到的?


第二题:
                     a=0;b=1;                             (1)

                     for(i=2;i<=n;i++)              (2)

                     {                                       (3)

                                   s=a+b;               (4)

                                   b=a;                   (5)

                                    a=s;                   (6)

                       }
              其中语句(1)的频度是2;语句(2)的频度是n;语句(3)的频度是n-1;语句(4)的频度是n-1;语句(5)的频度是n-1.则该程序段的时间复杂度是T(n)=2+n+3*(n-1)=4n-1
                请问语句(1)的频度是2是不是因为a=0执行了一次,b=1执行了一次?加起来就是2次?至于语句(2)的频度不应该是n-1吗?语句(3)的频度不应该是n-3吗?

请详细说明,谢

[ 本帖最后由 menghuann0 于 2009-10-24 00:24 编辑 ]
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-6-30 19:34 , Processed in 0.125174 second(s), 16 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表