みなさんこんにちは。私は Python の専門家です。 驚きましたか?先週、この記事を公開しました:Python の基礎 + モンテカルロ アルゴリズム (ソース コード付き) を使用して順列と組み合わせを実装する問題を共有する、そして今日は追加の章と呼ばれる別の問題があります!実際、今日は [🌑(これは月の裏側です)] の解決策を皆さんと共有したいと思います。これは素晴らしいです! 前の数日前、Caigeコミュニケーショングループで、[Rick Xiang]というファンがPythonコミュニケーショングループでの順列と組み合わせについて質問しました。一見とても簡単に思えますが、実際にはかなり難しいです。 タイトルは次のとおりです: リストには重複する値のない 15 個のランダムな数字があります。リストからランダムに 5 つの数字を選択し、a と a+1 のすべての可能な組み合わせを見つけます。 a は 15 個の数字のうちのいずれかになります。 アイデアと解決策については、この記事では、Pythonの基本+モンテカルロアルゴリズム(ソースコード付き)を使用して順列と組み合わせを実装する問題を共有し、【張先生】と【ちょっと面白い】のアイデアと解決策を提供します。合計5つのコードがあり、誰でも学ぶのに十分です。興味のある友人は、すぐに学んでください。実用的な情報が満載です。 2. 新しいコード先週の金曜日、私は Python の基礎 + モンテカルロ アルゴリズム (ソース コード付き) を使用して順列と組み合わせを実装する問題を共有するこのオリジナル記事を公開しました。幸いなことに、下の図に示すように、個人的に実践して建設的な解決策を提供してくれたファンがいます。 より誰にとっても分かりやすいと思われる【🌑(これが月の裏側です)】の擬似コードを載せておきます。
このコードは本当によく書かれています。Python の基礎知識がない人にとっては、理解するのは少し難しいでしょう。私も最初に読んだときは、理解するのが少し難しいと感じました。理解するには、何度か読む必要があります。 このコードはテスト済みで、効果的です。前のコードは約 12 秒かかりましたが、このコードは 1.5 秒しかかかりません。 彼はここで3つの最適化を行いました。1つ目は、15個の数字からランダムに5つの値を選択するのに長い時間がかかったことです。ここでは、numpy.arrayの特性を利用してコードを最適化しています。科学計算では、多くのループ文を節約でき、Pythonのリストよりもコードが簡単に使用できます。Pythonのリストは直接操作できませんが、Numpy配列は直接操作できます。2つ目は、以前の重複排除機能を削除することです。ここでもsetを使用して最適化しているため、この部分で時間が節約されています。3つ目は、セットの交差演算を使用することです。これにより、以前のif判断に比べて時間が節約されます。 こう考えるとため息が出ます、「人生は短い、私は Python を使う」! 結論私は上級の Python ユーザーです。順列と組み合わせに関するファンの質問に基づいて、この記事では、基本的にファンの要件を満たす、Python の基本 + モンテカルロ アルゴリズムを使用したソリューションを提供します。 しかし、この解決策は現時点では最善ですが、常に最善であるとは限りません。 |
<<: アルゴリズムベースの不動産投機は3月に20億ドル以上の損失を出した!不動産大手の破綻:AIは全く制御できない
最近、ホワイトハウスの国家サイバースペース局長室(ONCD)は、「基本的な構成要素への回帰:安全なソ...
推奨システムは、協調フィルタリングを使用して、ユーザーの好み情報を収集し、特定のユーザーの興味を予測...
サイエンス フィクションの世界では、デジタル ツインの概念は長い間定番であり、作家たちは、人間が操作...
AIの次のチャンスはどこにあるのでしょうか? AIの概念が初めて提唱されたのは1956年なので、60...
[[336522]]ビッグデータダイジェスト制作編集者: ルナ教科書で習ったことと実際の業務に乖離...
[51CTO.com クイック翻訳] 人工知能によってもたらされる自動化の波が、世界中のさまざまな業...
最近、米国プリンストン大学の研究者らがソフトロボットを製造する新しい方法を開発しました。このロボット...
2017年7月、国務院は「新世代人工知能開発計画」を発表し、人工知能が国家戦略の重要なツールとなって...
近年、プラスチックのリサイクルは改善されてきましたが、埋め立て地に廃棄されるプラスチック廃棄物は大き...
Facebook は最近、コンパイラ最適化タスクを実行するための高性能で使いやすい強化学習 (RL)...
これら 5 つの組織は、自然言語処理 (NLP) を使用して、顧客へのサービスの向上、反復的なタスク...
見て!今、あなたの前で踊っているのは 4 人の若い女性です。ショート動画プラットフォームで何人かのキ...