• 締切済み

プログラミングのための数学

現在、初級SE(Web系)として仕事をしています。データ構造やアルゴリズムの勉強をしていると、わからない数式がたくさんでてきてしまいます。高校の1年ぐらいの数学の知識しかありません。また、集合知などAIや行動経済学なども自分のキャリアで必要になってきますし、簿記などの会社経営の初歩の初歩などの知識も必要になります。 この際、数学ちゃんと勉強しようと思うのですが、大学入試向けのの参考書をやりつくせば、データ構造やアルゴリズムでの本にでてくるようなこともわかるようになるでしょうか?大学入試向けの勉強では何が足りていて、何が足りないでしょうか? また、物理も勉強した方がいいでしょうか?現在のところ、ゲームプログラマや組み込みシステムのプログラミングまでの知識は必要ありません。 アドバイスをいただければ幸いです。

みんなの回答

  • jmh
  • ベストアンサー率23% (71/304)
回答No.3

たぶん、遠回りですが、初歩→(応用)→基礎の順で勉強した方がよいと思います。

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

 SEに限らず、実務家には、必要になったときに如何に素早く勉強できるか、といういわば「一夜漬け力」が求められます。いろんな知識が必要だ~とあせってらっしゃるようだけど、 (1) 基礎をしっかり持っている (2) いろんな分野をちょっとずつかじっている のがポイントです。  なので、基礎の勉強(1)を地道にやりつつ、いろんなの(2)を(分かんなくても良いから)眺める、というやり方をお勧めします。  使うのは「××入門」というタイトルの本に限定で、厚さ2cm程度までとし、それぞれ半分ぐらいまでやるのを目標にすべきでしょう。専門性の高い部分は必要になってからやればいいのだから、まずは浅く広くやって、いろんなものの考え方を知ることです。ただし、本は買います。いつでも使えるように自分で持っていることが重要ですから。  数学書に毎月×万使う、とノルマを決めちゃうのも手かも知れません。同じ分野の別の著者の本を2~3種類買う、というのも手でして、分かんなくなった時に他の本と引き比べるとナントカなる場合が結構あります。  まず欲しいのは抽象代数学で、とりあえず群論。それから、離散数学の順列・組み合わせ論およびグラフ理論の初歩、オートマトン論(形式言語学)でしょうか。  これらを読みこなすためには、集合論、数理論理学、線形代数(行列)の入門書ぐらいは持ってないと辛いでしょう。(データベースは、要するに論理学の応用ですし。)軽い数理パズルはちょっとした空き時間に考え続けることができ、応用力を磨くのになかなか良いと思います。  いずれは確率論も欲しくなるでしょうね。それから、計算幾何学は幾何の計算を如何に効率よくやるか、という分野でして、お気に召すかもしれません。  物理学や解析学(微積分)は優先度低いです。

noname#122808
質問者

お礼

ありがとうございます。ボトムアップとトップダウンの両方でやったほうがよさげですね。とりあえず、基礎的な勉強をしながら、高度な理論についてや読み物を中心に始めたいと思います。

  • ESE_SE
  • ベストアンサー率34% (157/458)
回答No.1

いきなり全部は無理でしょう。 また数式と言ってもプログラムで使用する数式と学生時代の数学で学ぶ数式はかなり毛色が違います。 データ構造に関する基礎理論などは大学の情報系の専攻でやっと出て来ますし私自身も学びましたが、それを学んだところで即効性はありません。 (もちろん知っておいた方が有用なことがほとんどですが、習得に時間と労力がかかりますし、基礎研究レベルの内容なのでむしろ現実の問題に摺り合わせるのが大変です) それよりもむしろ、現在使用しているツールを使って出来る処理を実戦形式で学んでいくのが第一歩ではないかと。 書店に行けばデータベースや開発専門の月刊誌もありますし、それに類する書籍もあります。 普段使用している開発環境に合わせて本を選べば、例題形式などで学べます。 現在の開発環境の多くはフリーで家のPCでも構築可能ですから、自宅で学ぶのならそういった環境を整えてみては? 物理は・・・Webに関しては全く関係無いと思います。 お勤めの会社で特に物理学が必要なのであればそれに合わせて学習すべきでしょう。

関連するQ&A

専門家に質問してみよう