2

私は現在コミュニティ カレッジに通っています。カリキュラムはかなり良いものですが、数学や実際の理論が欠けています。何かのアルゴリズムを作成したいと思ったら、私はうんざりです。私は基本的にコードモンキーです。

自分のプログラミング経験を補完するために、関連する理論的背景を取得するには、どこから始めればよいでしょうか? 何を知る必要がありますか?

これを投稿する場所が間違っている場合はお詫びします。純粋なプログラミングの質問ではなく、技術的な質問をどこに投稿すればよいかわかりません。

4

2 に答える 2

4

エリート プログラマーの特定の派閥、特に Joel とおそらく Fog Creek は、あなたが数学に詳しくない場合、あなたを無視しているようです。他の人はしません。数学が得意であることは役に立ちますが、ここに私が理解するのに何年もかかったことがあります。そこには多くのグループがあり、その多くは深い偏見を持っており、あなたが素晴らしいと全会一致で同意してもらうことは決してありません.

ですから、自分の強みを発揮し、学ぶことをやめず、素晴らしいものを作り上げてください。それが重要です!

どうやらそれはの宗派が信じていることです。:)

真面目な話: 私は数学が苦手で、非常にやりがいのある 12 年間のキャリアを積んできました。私は進化的アルゴリズムを使用し、賢い人々が不可能だと言った解決策を実現しました。私は非常に直感的で創造的であり、直線的ではありません。そして、私は元気です。

したがって、あなたの特定の恐怖に対処するために、微積分を行ったり、プログラミングの芸術を読んだりしたことがなくても、アルゴリズムはかなり簡単に理解できると言います。今日から基本の学習を開始できます。知識は簡単に見つかります。バブル ソートとシェル ソート、およびそうでないものは魔法ではありません。これらは非常に単純なコードの断片です。私は Big-O 記法とアルゴリズムに慣れ親しんだのは、それが魅力的であり、自分ができる限り最高になりたいからです。それについての会話を運ぶことができます。

したがって、それはあなたが何をしたいかによって異なります。

3D ゲーム エンジンは、おそらく私が触れた中で最も数学集約的な分野です... 検索、AI、データベース エンジニアリング (読み: 実際のデータベース サーバーの構築)、および膨大なサーバーからの奇跡的なパフォーマンスを必要とするその他の分野は、アルゴリズム集約型であり、数学の深い知識。

一般的な Web 開発とビジネスの作業に必要なものは... おそらく、高校の代数の最初の 3 週間です。もしそうなら。真剣に。

ある種のアルゴリズム コンピューター サイエンスのコースと前提条件 (通常は 1 年次の微積分) を受講することは、可能であれば行うべきことです。賢くなることは決して悪いことではありませんが、おそらくもっと重要なのは、一部の人々はそれに恋をしてキャリアを築くことです。その周りに。これは、ほとんどの優れた CS プログラムの一部です。

しかし、それがなくても問題なく行うことができます。コミュニティ カレッジの英語プログラムを中退して、プログラマーとして見習いをしました。いつか戻りたいと思うかもしれませんが、今のところ、数学よりも自分の仕事に実際に関連することを学ぶのに忙しすぎます。

于 2013-05-29T14:00:19.630 に答える
3

それはあなたが何をしたいかによります。離散数学は、プログラミングに関連する一般的な推論に適しており、私の主な推奨事項です。線形代数には、グラフィックスやその他の分野での用途があります。統計は機械学習にとって重要です。

でも、CS コースを受講する必要があるようですね。タイトルに「アルゴリズム」または「コンピューティングの理論」が含まれているものは何でも優れています。それ以外の場合は、MIT、スタンフォードなどを通じてオンラインで無料で利用できる多くの優れたコースがあります。

于 2013-05-29T13:54:29.790 に答える