利用枚舉法求直方圖中最大矩形面積的方法實(shí)例
求直方圖中的最大矩形面積:
例如給定直方圖{2,3,1,2,4,2}
則直方圖中最大矩形面積為x=(3,6),|x|=3,y=2,max面積=6
思考:利用枚舉法
/*當(dāng)前位置往前進(jìn)行枚舉法*/ publicclass Solution{ static int histogramMaxArea( int[]a ){ int maxS =a [0]; for(int i =0;i <a .length;i ++){ //直方圖中依次向后枚舉 int min =a [i ]; //記錄當(dāng)前條圖及之前最小值 int m =0; //記錄底部邊長(zhǎng) for(int j =i ;j >=0;j --){ //依次向前取最大矩形 m++; if( a[ j]< min){ min= a[ j]; } int s =m *min ; //矩形面積計(jì)算 if( s> maxS){ maxS= s; } } } return maxS ; } public static void main(String args[]){ int a []={2,1,1,2}; int maxArea =histogramMaxArea( a); System. out.print(maxArea ); } }
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- Java找不到或無(wú)法加載主類(lèi)及編碼錯(cuò)誤問(wèn)題的解決方案
- Java中保留兩位小數(shù)的四種方法實(shí)現(xiàn)實(shí)例
- 海量數(shù)據(jù)去重排序bitmap(位圖法)在java中實(shí)現(xiàn)的兩種方法
- JavaScript"模擬事件"的注意要點(diǎn)詳解
- Android Java調(diào)用自己C++類(lèi)庫(kù)的實(shí)例講解
- PyQt5內(nèi)嵌瀏覽器注入JavaScript腳本實(shí)現(xiàn)自動(dòng)化操作的代碼實(shí)例
- 推薦15個(gè)最好用的JavaScript代碼壓縮工具
- JavaScript中.min.js和.js文件的區(qū)別講解
- 實(shí)例講解Java中random.nextInt()與Math.random()的基礎(chǔ)用法
- 談?wù)凧avaScript中super(props)的重要性
相關(guān)文章
java?stream使用指南之sorted使用及進(jìn)階方式
這篇文章主要介紹了java?stream使用指南之sorted使用及進(jìn)階方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05SpringMVC結(jié)合天氣api實(shí)現(xiàn)天氣查詢(xún)
這篇文章主要為大家詳細(xì)介紹了SpringMVC結(jié)合天氣api實(shí)現(xiàn)天氣查詢(xún),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05Java編程一個(gè)隨機(jī)數(shù)產(chǎn)生模塊代碼分享
這篇文章主要介紹了Java編程一個(gè)隨機(jī)數(shù)產(chǎn)生模塊代碼分享,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12Java將科學(xué)計(jì)數(shù)法數(shù)據(jù)轉(zhuǎn)為字符串的實(shí)例
下面小編就為大家?guī)?lái)一篇Java將科學(xué)計(jì)數(shù)法數(shù)據(jù)轉(zhuǎn)為字符串的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12java int類(lèi)型二維數(shù)組實(shí)現(xiàn)“楊輝三角”的完整實(shí)例
這篇文章主要給大家介紹了關(guān)于java int類(lèi)型二維數(shù)組實(shí)現(xiàn)“楊輝三角”的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Java基礎(chǔ)之Unsafe內(nèi)存操作不安全類(lèi)詳解
Java是面向?qū)ο笳Z(yǔ)言,在使用Java編程時(shí),大多數(shù)情況下都不會(huì)直接操作內(nèi)存,而且Java也不提倡直接操作內(nèi)存,但是Java中到底有沒(méi)有可以直接操作內(nèi)存的工具類(lèi)呢?有!Java中提供Unsafe類(lèi)可以用來(lái)來(lái)直接操作內(nèi)存,文中詳細(xì)介紹了Unsafe內(nèi)存操作不安全類(lèi),需要的朋友可以參考下2021-06-06詳細(xì)講解springboot如何實(shí)現(xiàn)異步任務(wù)
異步:異步與同步相對(duì),當(dāng)一個(gè)異步過(guò)程調(diào)用發(fā)出后,調(diào)用者在沒(méi)有得到結(jié)果之前,就可以繼續(xù)執(zhí)行后續(xù)操作。也就是說(shuō)無(wú)論異步方法執(zhí)行代碼需要多長(zhǎng)時(shí)間,跟主線(xiàn)程沒(méi)有任何影響,主線(xiàn)程可以繼續(xù)向下執(zhí)行2022-04-04Java?Web項(xiàng)目中解決中文亂碼方法總結(jié)(三種最新方法)
這篇文章主要介紹了Java?Web項(xiàng)目中解決中文亂碼方法總結(jié),本文給大家分享三種最新解決方法,需要的朋友可以參考下2022-06-06