アルゴリズムの練習とプログラミング学習に最適な 6 つの Web サイト

アルゴリズムの練習とプログラミング学習に最適な 6 つの Web サイト

Google や Facebook のアルゴリズムを理解しなければ、面接に合格することはできません。 では、今すぐ学んでみませんか。

私は 15 年以上の経験を持つプログラマーです。 高校1年生からアルゴリズムについてたくさん勉強し、取り組んできました。 私は卒業するまで学び続け、熱心に学んでいました。 卒業後は留学し、研究者としてのキャリアを積みました。

しかし、3年間働いた後、私は研究よりも製品/ソフトウェアに取り組むことを好むようになりました。 私はアルゴリズムではなくテクノロジー/エンジニアリングに目を向けました。 しかし、個人的には、開発者がアルゴリズムを理解することは依然として重要だと考えています。 そして、それを知らなければ、Google や Facebook の面接に合格することはできないと思います。

[[329216]]

> Unsplash の Fabian Grohs による写真

1. ハッカーランク

ジュニアからシニアまで、開発者から採用マネージャーまで、この Web サイトはプログラミング コミュニティで非常に有名です。

> hackkerrank.com

Hackerrank には、難易度の低いものから高いものまでさまざまなアルゴリズムがあり、さまざまなアルゴリズムとデータ構造 (SQL も含む) もあります。 コードを書いて直接実行し、結果を確認したり、ディスカッションを見て他の人たちがどのように解決したかを確認したりします。

面接の過程で、いくつかの企業からテスト(アルゴリズム + 多肢選択式 + エッセイ)のためにここに来るように言われました。 だからここに来てもっと練習して慣れてください。

2. トップコード

> https://www.topcoder.com/challenges/

TopCoder は、プログラマーが互いに競い合う最も初期のオンライン「アリーナ」の 1 つでした。 コード エディターを使用してオンラインで実行できるアルゴリズム チャレンジのリストを提供します。 シングルラウンドは月に数回、特定の時間に開催され、コーダーは最も速く課題を解決し、最高のスコアを出すために互いに競い合います。

TopCoder で上位にランクインするユーザーは、非常に優れたプログラマーであり、多くのプログラミング コンテストに参加することがよくあります。 最高位の参加者には、コードコンテスト、アルゴリズム、数学など、好きなことについて書くことができる独自のブログ「ALGORITHMS WEEKLY BY PETR MITRICHEV」が与えられます。

3. ギークスフォーギークス

アルゴリズムの実装に問題がある場合は、Google で解決策を検索した後、このページに何度か遭遇したことがあるでしょう。

> https://practice.geeksforgeeks.org/

この geekforgeeks ページはちょっと見栄えが悪く、演習もあまりうまく分類されていません。 ただし、多くの一般的なアルゴリズム演習に対する解答が用意されています。 各ソリューションには、さまざまなアプローチと、各アプローチの複雑さ/メモリが含まれます。 これは非常に興味深く、有益な読み物です。

そのため、ホームページではこのページ/ソリューションの例とともに、人気のアルゴリズムが見られることもあります。

4. リートコード

もう一つの人気のあるアルゴリズムトレーニング Web サイト: Leetcode。 これに関する質問の数はハッカーランクと同数で、難易度は主に簡単/中程度/難しいの 3 レベルです (簡単な質問の中にも非常に難しい質問があります)。

> https://leetcode.com/

アルゴリズムの面接を受けたとき、能力を評価するには中程度の簡単な質問、Facebook/Google の面接では難しい質問がよく出されました。

このページは、他のページと比較してパフォーマンス/ランタイム コードを測定し、コードの実行速度が速いか遅いか、また最適化できるかどうかを確認するのにも役立ちます。

日々のコーディング問題

このページを知ったのは、Google 社員を辞めて YouTuber になった CS Dojo の YouTube チャンネルを視聴していたときでした。

> https://www.dailycodingproblem.com/

他のページとは異なり、このサイトには求人情報はありません。 代わりに、メールアドレスを入力すると、試すためのアルゴリズムが 1 日 1 つ送信されます。

これらも、Amazon や Google などの企業が候補者の面接に使用している「簡単/中程度」の難易度です。 プレミアム パッケージを購入すると、ソリューションを入手できます。

エクササイズ.io

他のページがアルゴリズムの練習に関するものである場合、演習はプログラミングを学ぶのに最適な場所です。

> https://exercism.io/

トレーニング用の演習はたくさんありますが、これらの演習はアルゴリズム的ではなく、プログラミング言語の使用に重点を置いています。

  • if/else ループを使用します。
  • 日付処理、文字列処理
  • メソッドの分離、クラスの編成
  • エラーの処理方法と非同期コードの書き方

私はこのウェブサイトを使って、Golang と Elixir についてさらに学んでいます。

しばらくプログラミングをしていて、新しい言語と新しい考え方を学びたいのであれば、ぜひ挑戦してください。

要約する

この記事では、アルゴリズムを練習し、プログラミングを学ぶための 6 つの非常に優れた Web サイトを紹介しました。

個人的には、あまり勉強する必要はないと思います。面接前に練習したい場合は、Skilled/Hackerrank/Leetcode にアクセスしてください。 あるいは、新しい言語を学ぶ必要がある場合は、スポーツを選択してください。

<<:  AIと機械学習を活用して、誰にでも何でも販売する

>>:  マスクの後ろに隠れて沈黙しないでください。AIはあなたが誰であるかを知っています

ブログ    
ブログ    
ブログ    

推薦する

ChatGPT文明がオンラインになりました!ワンクリックで明代の南京と中世イタリアを旅しよう

ChatGPT がリリースされてから、宿題をするために ChatGPT を使い始める学生が増えてきま...

座標系の変換を本当に理解していますか?自動運転にはマルチセンサーが不可欠

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

「翼竜」が飛び立ち、その威力を発揮。固定翼ドローンについて、あなたはどのくらい知っていますか?

空を飛ぶ龍、数千マイル離れたところから救援に駆けつける!最近、「翼龍」無人機が飛び立ち、被災地に急行...

百度AIシティが上海と契約を締結、インテリジェントイノベーションで上海に新たな伝説を刻む

11月27日、百度は上海市政府と戦略的協力枠組み協定を締結した。上海市党委員会書記の李強氏と市党委員...

誰もがエンドツーエンドに取り組んでいますが、エンドツーエンドの自動運転の基礎は何でしょうか?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

我々は最初のAI戦争を目撃したかもしれない

[[409544]] 2021年5月初旬、イスラエルに住むパレスチナ人とイスラエル警察の間で激しい衝...

2019年のトップ10テクノロジートレンドは刺激的だ

2019年もすでに半分が過ぎました。今年上半期のテクノロジー業界の目覚ましい成果は何でしょうか?今日...

AI業界で働く人々はどうすれば失業を回避できるのでしょうか?

「人工知能によって人間が失業したわけではない。人工知能に携わる人々が先に失業したのだ」これはもとも...

...

機械学習と感度分析を組み合わせてビジネス戦略を策定するにはどうすればよいでしょうか?

数え切れないほど多くの企業が、意思決定を支援するために機械学習 (ML) を日常的に使用しています。...

ビッグデータとクラウドコンピューティングの融合がロボット工学の未来

史上初のロボットのデザインはレオナルド・ダ・ヴィンチにまで遡ることができます。 16 世紀の変わり目...

...

AmodalSynthDrive: 自動運転のための合成アモーダル知覚データセット

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

ますます大きく、さらに大きく:AI 研究は長期的には行き詰まりに陥るのでしょうか?

[[286629]]ビッグデータダイジェスト制作出典: techtalks編纂者:穆金、曹培鑫、銭...