2011-03-31 23 views
5

私は現在、私の最初のアルゴリズムとデータ構造の途中です。残念ながら、私の先生はあまり良くはなく、私たちが使っているオンラインの本は非常に曖昧です(http://people.cs.vt.edu/~shaffer/Book/)これまでAを維持管理してきましたが、これは主に運と常識によるものですが、現在では、種類、検索、グラフなどの高度なデータ構造を取り扱っています。アルゴリズムとデータ構造

私は、あなたがこのテーマをよりよく学び、推薦するのに役立つオンラインリソースがあるかどうか疑問に思っていました。私はこのトピックをよく知っていることの重要性を理解しています。特に効率的なコードを書いているときやインタビューを受けているときには、アルゴリズムやデータ構造をよりよく理解し理解するのに役立ちます。

+0

はhttp://stackoverflow.com/questions/3665370/book-to-learn-advance-concepts-in-data-structures-and-algorithmsこれらは」上がりません必然的に進歩している、どちらか – dfb

答えて

0

は私が今までのアルゴリズムとデータ構造を学ぶために見た中で最高の本はMITはじめにあるがありますアルゴリズム。あなたのレベルにかかわらず、初心者、初心者、上級者、上級者には関係なく、あなたにとっては良いことです。

1

SkienaのThe Algorithm Design Manualを取得してください。これはすばらしい本です。アルゴリズムとデータ構造を理解するのに役立ちました。

2

あなたはおそらく私の答えが嫌いでしょうが、あなたができる最も生産的なことはあなたの態度で働くことになると思います。あなたはしばしばあなたが探しているものを見つける。したがって、もしあなたがインストラクターを準標準として扱っていて、あなたの本が無価値であるとしたら、あなたはそれからほとんどを得ることはありません。インストラクターの強みを見て、本から何ができるかを知るなら、遠くに行くでしょう。私はあなたの文章を見て、それは私にとってあいまいではないように見えました。間違いなく、他の回答に記載されている参考文献を見てください。しかし、クラスについても肯定的です。

+3

確かな態度が問題になる可能性がありますが、その人にもポイントがあるかもしれません。私は最初のデータ構造とアルゴリズムのクラスを覚えています(これは最初は対象を理解するのがやや難しい)。私の先生は非常に強いロシア語のアクセントを持っていて、私たちのように彼等のCS研究で4〜5年先進の学生に与えた課題を私たちに与えました。それは苦痛だった。私は教師からではなく、学期からその本や仲間から学びました。 –

+0

私は間違いなくあなたのポイントを見ることができます。私は通常、私が先生の授業でやっていることに対して何らかの責任を負う者はいませんが、私の教授がやっていないような深い説明が必要なようです。これはしばしば自分自身を残し、残りのクラスのほとんどは混乱します。 – lessthanjacob

0

スライドは、次の場所にあります:http://www.heppenstall.ca/academics/doc/242/非常に参考になりました。幅広いデータ構造と基本的なアルゴリズムを網羅し、何が起きているのかを理解するのに役立つ写真が含まれています。

さまざまなスライドを初めて作成した人や、最新のバージョンを維持している人はいないでしょう。彼らは多くの異なる学校のサーバーにアクセスし、少なくともPDFとPPT形式で利用できます。

1

個人的には、私はいつも何かを学ぶ最も良い方法は、それを試して構築することだとわかっています。それがアルゴリズムであろうと新しいデザインパターンであろうとデータ構造であろうと、コードでそのことを作成するプロセスは、常に私が最もよく学んだ方法でした。

+0

しかし、私はそれを行うプログラミング経験を持っていない場合はどうなりますか?私はC + +とCについてかなり良い理解を持った2年次のコンピュータサイエンス専攻です。私はまだこれらのことのいくつかを構築できると思いますか? – lessthanjacob

+0

@SkankinJake ...上記の私のリンクをチェックしてください...私は、C++の1学期の後にも問題なくこの本を読むことができました...そしてそれを読んだ後、私は多くのSTLデータ構造はそれほど難しくありません。私のことはSTLよりも優れているわけではありません(正しいコンテナが利用できる場合はそれを使用することをお勧めします)。この本はアルゴリズムと比較してデータ構造に重きを置いているので、その目的のために他の補足的な資料を見つけなければならないかもしれません。 – Jason

+0

私はそれを読んでください。ありがとう。 – lessthanjacob

2

私は特にこの本が好きでした:Data Structures with C++ Using STL by Ford and Topp。

これらはかなりソースコードが含まれています(すべてがウェブサイトからダウンロードできます)。STLに実装されている多くのデータ構造の徹底的な実装により、 STLには存在しない2つのデータ構造(グラフなど)もあります。より基本的なデータ型から、各自のデータ構造の内部構成をよく理解するだけでなく、自分で何かを構築する必要がある場合には、十分なリファレンスを得ることができます。単純なデータ型(一般的な意味で...これらの考えは他の言語にも転用できます)と、それらを実際の設定にどのように適用すべきかというデータ構造を作成して作成することができます。

STLのデータ構造がどのように実装されたかについての参考になるので、STL自体の参照ではありません(より単純な形ですが...アロケータを心配する必要はありません、STLコード内の他の多くの付属語の多くは、初心者のために読みやすく理解することができます)。このことができます

希望、

ジェイソン

関連する問題