烙饼啊烙饼{转自ITEO
生活随笔
收集整理的這篇文章主要介紹了
烙饼啊烙饼{转自ITEO
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一摞烙餅
博客分類:- 編程
Java代碼 ?
2.事實(shí)上,飯店的師傅經(jīng)常把烙餅烤得一面非常焦,另一面則是金黃色。這時(shí),服務(wù)員還得考慮讓烙餅大小有序,并且金黃色的一面都要向上。這樣要怎么翻呢?
A? 先按照“烙餅排序?qū)崿F(xiàn)”對(duì)烙餅進(jìn)行大小排序
B? 然后對(duì)有金黃色不朝上的烙餅做如下操作,以cakeArray[k]為例
翻轉(zhuǎn)cakeArray[0:k],將cakeArray[k]翻到頂層,翻轉(zhuǎn)cakeArray[k],然后將cakeArray[0:k]翻轉(zhuǎn),將cake[k]翻回原來位置
3.有一次師傅烙了三個(gè)餅,一個(gè)兩面都焦了,一個(gè)兩面都是金黃色,一個(gè)一面是焦的,一面是金黃色,我把它們摞一起,只能看到最上面一個(gè)餅的上面,發(fā)現(xiàn)是焦的,問最上面這個(gè)餅的另一面是焦的概率是多少?
條件概率:雙焦面的烙餅在最上面的概率為1/3,單焦面烙餅在最上面的概率也為1/3,單焦面烙餅在最上面同時(shí)焦面朝上的概率為1/3 * 1/2 = 1/6,因此在最上表面為焦面的條件下,其對(duì)應(yīng)的下表面也為焦面的概率為1/3 / (1/6 + 1/3) = 2/3
4.每次翻烙餅的時(shí)候,上面的若干個(gè)烙餅會(huì)被翻轉(zhuǎn)。如果我們希望在排序過程中,翻轉(zhuǎn)烙餅的總個(gè)數(shù)最少,結(jié)果會(huì)如何呢?
不以翻轉(zhuǎn)次數(shù)作為評(píng)價(jià)標(biāo)準(zhǔn),而是以翻轉(zhuǎn)烙餅總個(gè)數(shù)作為評(píng)價(jià)標(biāo)準(zhǔn)。
A? 修改相應(yīng)的LowerBound和UpBound函數(shù),UpBound也采用同LowerBound一樣的參數(shù)列表
B?? 同時(shí)在Search(int step)中增加一個(gè)參數(shù)int tatalReverseCount,增加一個(gè)成員變量int m_nMaxReverseCount,
C?? 代碼m_nMaxSwap = UpBound(m_nCakeCnt);修改為m_nMaxReverseCount = UpBount(m_CakeArray,m_nCakeCnt);m_nMaxSwap = 2*m_nCakeCnt;
D?? 代碼if(step + nEstimate > m_nMaxSwap)修改為if(tatalReverseCount + nEstimate > m_nMaxReverseCount)
E?? 代碼m_nMaxSwap = step;下面增加一條語句m_nMaxReverseCount = tatalReverseCount;
轉(zhuǎn)載于:https://www.cnblogs.com/avenxia/archive/2012/09/13/2683094.html
總結(jié)
以上是生活随笔為你收集整理的烙饼啊烙饼{转自ITEO的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我也来记录我的一些开发心得和笔记!
- 下一篇: 一种自适应模拟退火粒子群优化算法-附代码