/ **
。*マトリックスamxn考えると、IFが行うITで0プレイス要素0、SETおよびその全体の行の列です
。*クリックへのフォローアップを表示
*フォローアップ:
?*あなたは余分なスペースを使用しました
*ストレートフォワードソリューション使用してO(Mn)はスペースが。おそらく悪い考えです
ベストソリューション*シンプル改善がO(M + N-)スペースを使用していますが、それでもわけではありません。
*あなたが一定のスペースソリューションを考案てもらえますか?
*
* MXN行列与え、場合要素は、それが全体の行と列が0に設定されている、0です。場所。
*をクリックして表示する「フォローアップ。」
*フォローアップ:
*あなたは、余分なスペースを使うのか?
*使用Oダイレクトソリューション(MN)スペースは悪い考えかもしれません。
まだ*シンプルなO(M + N)のスペースを使用して変更ではなく、最善の解決策。
*あなたは解決策に一定のスペース、それを考えることができますか?
* /
java.util.ArrayListのインポート; / ** *要素0、SETおよびそれを行う中0プレイスが全体の行の列の場合マトリックスamxn、与えられた。 *クリックするフォローアップ表示します。 *フォローアップ: *あなたが使用しましたが余分なスペース? *まっすぐソリューションは、使用してO(Mn)はスペースがおそらく悪い考えです。 *シンプル改善が最適なソリューションをO(M + N-)スペースを使用していますが、それでもわけではありません。 *あなたが一定の間隔のソリューションを考案もらえますか? * *要素が0である場合、それは全体の行と列が0に設定され、m×nの行列を与え。場所。 *をクリックして表示する「フォローアップ。」 *フォローアップ: *あなたは、余分なスペースを使うのか? *使用Oダイレクトソリューション(MN)スペースは悪い考えかもしれません。 まだ*シンプルなO(M + N)のスペースを使用して変更ではなく、最善の解決策。 *あなたは解決策に一定のスペース、それを考えることができますか? * / パブリッククラスMain36 { パブリック静的無効メイン(文字列[] args){ ArrayListの<整数> colum =新しいArrayListを<>(); INT [] []行列= { {1,2,3,4,0}、 {6,0,8,9,10}、 {11,12,0,14,15}、 {16,17,18 、19,20} }。 setZeroes(マトリックス) 以下のために(INT i = 0; iはmatrix.length <; iは++){ ための(int型J = 0; J <行列[I] .LENGTH; J ++){ System.out.print(行列[I] [J] + " 、「); } のSystem.out.println( "")。 } } パブリック静的ボイドsetZeroes(INT [] []行列){ のArrayList <整数>行=新規のArrayList <>(); (INT J = 0; J <行列[I] .LENGTH; J ++)のために{ 以下のために(INT i = 0; iはmatrix.length <; iは++){ IF(行列[I] [J] == 0){ row.add(I)。 colum.add(J)。 } } } (整数e:行)のために{ ための式(I = 0 int型、iは行列を<E] .LENGTH; iは++){ 行列[E] [I] = 0; } } (整数e:colum)のために{ ための(int型J = 0; J <matrix.length; J ++){ 行列[J] [E] = 0; } } } }