這是一道Hard的題域蜗,但是面試經(jīng)常會(huì)考這題燕少。 我拿到這題看完,如果是面試步淹,我會(huì)告訴面試官 用一個(gè)max varaible來(lái)記錄當(dāng)前最大的number,然后遍歷所有possible rectangle, 只有比max大缭裆,比K小的才能存入max. 但是這樣非常慢键闺。
[而且我自習(xí)思考了一下, 光遍歷所有rectangle我就已經(jīng)不會(huì)了澈驼。 比如說(shuō)5*5 matrix. 起始點(diǎn)可以top left, bot left, top right, bot right 各種地方取2*2 matrix. ..難道要遍歷O(N^2) position?? ]
辛燥。。缝其。沒(méi)想到真有大哥這么死算出來(lái)挎塌,而且還pass了。氏淑。
這個(gè)大哥更厲害。硕噩。假残。面試?yán)镏苯訉懗鰜?lái)這道題臥槽。炉擅。辉懒。
http://www.geeksforgeeks.org/dynamic-programming-set-27-max-sum-rectangle-in-a-2d-matrix/
首先看一下這個(gè)概念:
Even Better Solution:
有空還得了解一下TreeSet