バックトラッキングアルゴリズムをほとんど忘れてしまいましたか?組み合わせ問題を解く方法をまだ覚えていますか?ハハハハ バックトラッキング アルゴリズムは、実際にはブルート フォース検索です。ブルート フォース検索であるなら、なぜバックトラッキングを使用する必要があるのでしょうか。それは、ブルート フォース検索で解決できる問題もあり、これより良い方法がないからです。 2 つの整数 n と k が与えられた場合、1 ... n 内の k 個の数値のすべての可能な組み合わせを返します。 この問題を解決するためにネストされた for ループを使用する場合、n が 100、k が 50 であれば、50 層の for ループが存在することになります。この時点で、単純なブルート フォースは機能しないことがわかります。 ここでバックトラッキング アルゴリズムが登場します。 バックトラックアルゴリズムで再帰を使用して、for ループのカスケードとネストを実行します (k 層の for ループを開くと理解できます) 各再帰で for ループがネストされている場合、再帰によって多層ネストされたループの問題を解決できます。 私の記事「バックトラッキング アルゴリズム: 組み合わせ問題の解決!」でも、バックトラッキング 3 部作について説明しました。この方法によれば、バックトラッキング アルゴリズムは難しくないことがわかります。 問題リンク: https://leetcode-cn.com/problems/combinations/ バックトラッキング アルゴリズムのテンプレートは次のとおりです。
この記事はWeChatの公開アカウント「Code Thoughts」から転載したもので、以下のQRコードからフォローできます。この記事を転載する場合は、Code Thoughts の公開アカウントにご連絡ください。 |
<<: 目録:2021年1月の人工知能分野における資金調達活動のリスト
>>: 2021年に最も役立つ顔認識ソフトウェア9選をチェック
著者: 徐潔成校正:Yun Zhao 「AIは確かに人間を殺すかもしれない」これは注目を集めるために...
Java は一般的な組み合わせアルゴリズムを実装しています。{31311133,33113330} ...
v\:* {behavior:url(#default#VML);} o\:* {behavior...
[[410356]] 7月9日のニュース:最近、デジタルブロガーの@长安数码君はソーシャルプラット...
視覚化と視覚分析では、高帯域幅の視覚認識チャネルを使用してデータをグラフィック表現に変換し、インタラ...
1. 背景1.1 ブースティングブースティング[1]は、アンサンブルモデルを訓練するための古典的な手...
デジタル経済の発展に伴い、全国の各省市がコンピューティングインフラの構築を競って推進し、人工知能コン...
人工知能の波が世界を席巻しています。人工知能、機械学習、ディープラーニングなどの高頻度語が頻繁に登場...
大規模モデルが AI 開発の新たなパラダイムとなるにつれ、大規模言語モデルをプログラミング分野に統合...
1. ランキングの計算式にはどのような指標が含まれていますか?指標 A、B、C とは何ですか? 重み...