2012-05-14 9 views
5

USACOのようなプログラミングコンテストのアルゴリズムを学ぶ最善の方法は何ですか?私はちょうど銀の部門に入ったので、アルゴリズムの学習を始める必要があります。 Dijkstra's、Dynamic Programming、Flood-fillなどのアルゴリズムやテクニックをJavaで学ぶための良い本やチュートリアルはありますか?実際に問題を実装する方法を知ることができますか?助けてくれてありがとう!コンテストのプログラミングアルゴリズムを知るにはどうすればよいですか?

+4

おそらく地元の大学で授業を受講するのが最善の方法です。そうでなければ、アルゴリズムに関する本を拾うことも別の選択肢です。 –

+3

「Programming Challenges」(http://www.amazon.com/Programming-Challenges-Steven-S-Skiena/dp/0387001638/ref=sr_1_1?ie=UTF8&qid=1336971355&sr=8-1)の本はどうですか? –

+1

それらに挑戦 – Bohemian

答えて

4
  1. 実践!これが最も重要なポイントです。 SPOJUVAなどのオンライン審査員の問題を定期的に解決してください。より多くの問題を解決することで、プログラミング競技会で尋ねられる質問の種類と形式がわかります。このようにして、独自のアルゴリズムを導き出し、問題を確認する能力も向上します。

  2. Introduction To Algorithm, Cormenを取得してください。アルゴリズムとデータ構造の学習と分析のための優れた本です。

+0

[UVA](http://uva.onlinejudge.com/)のリンクが壊れているようです。 – gahcep

+0

リンクが固定されていますが、UVAサイトは一瞬停止しています。 – nims

+2

私はCLRS(* Introduction to Algorithms *)は初心者のためのベストブックだとは思っていません。非常にマシーで乾燥しています。代わりに、VaziraniとDasguptaの* Algorithms *を試してみてください。プリプレス版は無料のPDFとして入手できます:Google for Google。それははるかに魅力的なスタイルで書かれていますが、必要なポイントのほとんどを負います。おそらくそれほど厳密ではありませんが、後でそれをCLRSから得ることができます。 –

関連する問題