2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

優しいプログラマーのお兄様方教えてください。

49 :仕様書無しさん:2016/03/20(日) 11:13:58.02 .net
>>48
データ構造が適用可能なアルゴリズムを決めるんだと思うが

だから基本的にコンピュータサイエンスの本の名称は
「アルゴリズム」でもなく、「データ構造」でもなく「アルゴリズムとデータ構造」ってなってるだろ?

単純な話、プログラム組むなら全部リストでもできなくはないんだよ
でもそれだと効率が悪い場面、適さない場面が当然にしてある。

データ構造とアルゴリズムは結構抽象的な領域なので、必要があるかないかで言えば要らないと感じると思う。
ただ本格的なアプリや、フレームワークの背景には必ずよいデータ構造とアルゴリズムが潜んでいるので
それが明確にプログラマのレベルを分けるところだろうね

データ構造に対して意識すべきは
どれだけそれが速いのか(時間的計算量)とどれだけメモリを食うのか(空間的計算量)ということ
データの検索、
データの追加(ランダム・アクセス、シーケンシャルアクセス)、
データの削除(ランダム・アクセス、シーケンシャルアクセス)
それぞれに対してどの程度遅いのか。

スクリプト言語は、まず基本的に言語自体が遅いので、
間違ったデータ構造、アルゴリズムを選択してしまうと「何かおかしい」ってなるかもしれないからオススメなんだよな
あとデータ構造が言語自体に組み込まれているパターンも多いからデータ構造を構築しやすい

これが言語自体が高速に動作する言語だと
間違ったデータ構造を適用してもそれなりに動くから、いつまで経っても
適切なデータ構造を使えないってことになりかねない。
そういう言語はおおよそライブラリでデータ構造をサポートしており
データ構造に対する操作のみがインターフェースとして与えられているということもあるので
具体的にどのようにデータが格納されているかをイメージできない
もちろんそれが悪いってことでもないんだけど、複数の言語を学ぶ意味はそこに有ると思うね

総レス数 76
25 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★