この記事はWeChatの公開アカウント「Light City」から転載したもので、著者はlightcityです。この記事を転載する場合は、Guangcheng公式アカウントまでご連絡ください。 最近、アルゴリズムを再検討し、acwing を最初からフォローして、Go で実装する予定です。 今日の目標は、Go で書かれたクイックソートを学ぶことです。 acwingから学びました。 入力:
出力:
ちょっとした考察: 1. ピボットを定義する 2. ピボットに従って間隔を分割する 3. 再帰的な部分問題 ピボットはランダムに選択できます。例: arr[l]、arr[r]など。 再帰時には 2 つのオプションがあります。1 つは j を取ることですが、無限ループを防ぐために pivot が arr[r] を取らないようにする必要があります。 この記事ではこれを実装します:
もう 1 つの方法は、i を取ることです。無限ループを防ぐために、pivot が arr[l] を取らないようにする必要があります。同時に、arr[(l+r)>>1] を使用することはできず、切り上げる必要があります。たとえば、arr[(l+r+1)>>1] です。 この記事ではこれを実装します:
最後に、囲碁の知識を追加します。 1. 入力go で入力を処理するには、fmt.Scan を使用してアドレスを渡します。ここでは、後で直接再利用できる関数を実装しました。
2. 交換2 つの要素をすばやく交換する方法。
これにより、素早い交換が可能になります。 3.do...while{}以下を使用できます:
4.i++ と ++i++i と --i はサポートされていません。 最終的に、完全なコードは次のようになります。
|
<<: データセットと DataLoader を使用して PyTorch でデータをカスタマイズする
>>: AIを活用した自動化はエンタープライズレベルの自動化2.0です
人工知能(AI)が社会に普及するにつれ、サイバーセキュリティの分野にも参入してきました。 AI は、...
セキュリティ専門家の観点から見ると、現在、AI と機械学習を導入する必要性が高まっています。彼らは、...
多国籍データ インフラストラクチャ企業である Equinix は、機械学習の確率モデルを使用して潜在...
近年、四足歩行、把持、器用な操作など、ロボットの強化学習技術の分野では大きな進歩が遂げられていますが...
都市交通の分野では、AI信号制御、インテリジェントな街路交通監視、スマートバス停、スマート高速道路な...
NVIDIA の GTC CHINA 2016 テクノロジー カンファレンスでは、数多くの業界リーダ...
計算知能から知覚知能、そして認知知能へと、人工知能の鍋はついに沸騰しようとしています。最近、3E 2...
人工知能は現在、ますます広く利用されるようになっています。ほとんどの場合、堅牢で適応性の高い AI ...
ChatGPT の素晴らしい初年度が終わりに近づくにつれ、生成型人工知能 (genAI) と大規模言...
C# 暗号化アルゴリズムMD5 は Message-Digest Algorithm 5 の略で、1...
言語モデルがより強力になるにつれて、特定のタスクのデータとメトリックがトレーニングと評価のボトルネッ...
最近、Reddit コミュニティで機械学習の分野を批判する記事が白熱した議論を巻き起こし、3.1k ...
1 月 19 日、テクノロジー業界が超人的、神レベルの知能を達成する道を歩んでいるという確固たる信念...