私は解決できなかったインタビューのためにこの質問に出くわしました。 mxnグリッドのボトム左から右上コーナーまでの最短パスの数を計算するコード。これを解決するには?長方形のグリッドで最短のパスをコーナーにコーナー
答えて
この回答は、インタビュアーが「あなたはどのように[x]を解決しますか?」という質問に私を困惑させようとしたときに私の「行きたい」という答えを思い出させます。私の返答:「数学*で」 –
このようなインタビューの質問の唯一のポイントは、あなたが動的プログラミングに精通しているかどうかを確認することです。私はここで魚を釣る人を教えています。 – ivancho
@ivancho:この特定の問題を解決するために動的プログラミングを使用する必要はまったくなく、解決策はO(1)の時間と空間で見つけることができます。ヒント:最短パスの長さは 'm + n 'なので、*任意の*最短パスには*正確に' m'水平と 'n'垂直ステップがあります。しかし、その順序は任意です。 –
ソリューションあなたはそれを解決したいと仮定すると、ではない:考える1x1の、1x2の、(M-1)×(n-1)の
この問題はAですthis questionのプライベートケースは、右上隅のすべてのパスにのみ自分自身を制限します。
簡略化のため、n * n
行列[m * n
に一般化することができます。他の1つのコーナーから各パスはexcactly2n
それらのうち移動し、持ってい
注 - 正確にn
動きは、「アップ」であり、残りは「右」だから、
、あなたはすべてのあなたのパスを表すことができますバイナリーベクター、このようなバイナリーベクターの数が近い式O(1)
でを用いて計算することができる1
に設定正確n
ビットの長さ2n
の:choose(2n,n)
。
n * m
行列に一般化する:1つのコーナーからもう1つのコーナーまでの経路にいくつのステップがありますか?どれくらい "正しい"ものなのでしょうか?新しい行列に選択式を含めるようにして、前回と同じ結果が得られることを確認してください。n=m
- 1. コーナーからコーナーへの線の形
- 2. BARスタイルを使用し、正方形/長方形のコーナーを持つUISegmentedlControl?
- 3. Qtで丸めた2つのコーナーのみを持つ描画長方形
- 4. コーナー
- 5. SVG一角コーナー四角形/四角形
- 6. popoverpresentviewcontroller矩形のコーナーと矢印なし
- 7. コーナーのスポットライトThree.js
- 8. スタイルウェブキットのコーナー
- 9. QRコードの方向コーナー
- 10. 4つのコーナーからパースペクティブでグリッドを作成する
- 11. 形状が見えないコーナー - Android?
- 12. 丸形のコーナーwpfフォームを作成する方法
- 13. キューブのコーナーでの回転
- 14. UIViewコーナーの問題
- 15. 丸いコーナー:jQueryの
- 16. UIToolbarのコーナー半径?
- 17. IE7内のコーナーTH
- 18. ナビゲーションバーのコーナー半径
- 19. 長方形の他のコーナーを特定するにはどうすればよいですか?
- 20. コーナー検出
- 21. フラットな鋭いコーナーまたは斜めのコーナー
- 22. JavaFXのコーナーを中心に矩形を回転
- 23. Materializecss長方形のグリッド3x3
- 24. nコーナーのポリゴンを描く
- 25. 三角形のスケーリングのためのコーナーに地形/メッシュを固定する
- 26. 私のJoomlaのサイトはコーナー
- 27. 白のコーナーのWebKit-スクロールバー
- 28. Android XMLのバックグラウンドサークルのコーナー
- 29. popup.htmlの曲がったコーナー?
- 30. UIViewのカスタム丸めコーナー
http://stackoverflow.com/questions/9105699/algorithm-for-finding-all-paths-in -a-nxn-grid http://stackoverflow.com/questions/9172053/all-possible-moves-in-a-5x5-grid http://stackoverflow.com/questions/9051254/finding-points-in -a-grid-with-exactly-k-paths-to-them 2週間以内に少なくとも3つの同じ質問がありました。検索を使用しようとしましたか? – OleGG