首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
假设在某程序中有如下一个if-then嵌套的语句 if(C1
[问答题]
假设在某程序中有如下一个if-then嵌套的语句
if(C1)
if(C2)
if(C3)
…
if(Cn)
S;
其中Ci为布尔表达式。显然,只有当所有的Ci都为TRUE时,语句S才能执行。假设t(i)为判别Ci是否为TRUE所需时间,p(i)为Ci是TRUE的概率,试讨论这n个布尔表达式Ci (i=1,2,…,n)应如何排列才能使该程序最有效地执行?
查看答案及解析
添加笔记
邀请回答
收藏(0)
分享
纠错
1个回答
添加回答
0
推荐
赞花婆
应该先列出该语句执行时间的期望值。
假设语句S的执行时间为T,则该语句执行时间的期望值为
T=(1-p(1)t(1)+p(1)(1-p(2))(t(1)+t(2)+…
+p(1)p(2)…p(n-1)(1-p(n))(t(1)+t(2)+…
+t(n)+p(1)(2)…p(n)(t(1)+t(2)…t(n)+t)
令p(0)=1,则上式可写为
可以证明:当这n个布尔表达式C
i
的排序满足
时将使T达到极小值,则若依
从小至大的次序来排列,将使该语句的执行最有效。
发表于 2018-03-25 09:50:35
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
排序
上传者:
赞花婆
难度:
1条回答
0收藏
1594浏览
热门推荐
相关试题
在下列表述中,错误的是()
字符串
树
排序
评论
(43)
BN的gama labada意义是什么
评论
(1)
在大语言模型中,LayerNorm...
大模型开发
评论
(1)
在大语言模型中,什么是"Spars...
大模型开发
评论
(1)
在大语言模型中,什么是"Knowl...
大模型开发
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
假设语句S的执行时间为T,则该语句执行时间的期望值为
T=(1-p(1)t(1)+p(1)(1-p(2))(t(1)+t(2)+…
+p(1)p(2)…p(n-1)(1-p(n))(t(1)+t(2)+…
+t(n)+p(1)(2)…p(n)(t(1)+t(2)…t(n)+t)
令p(0)=1,则上式可写为