アルゴリズムとプログラミング

アルゴリズムとプログラミング

【応用情報技術者試験】モンテカルロ法

モンテカルロ法とは、コンピューターを使って乱数を発生させ、シミュレーションや数値計算を繰り返すことで、数学的な仕組みが難しい現象やランダムな現象の近似解を求める手法です。乱数を用いた試行を多数回繰り返すことで、大数の法則により結果が特定の数...
アルゴリズムとプログラミング

【応用情報技術者試験】線形探索と二分探索の特徴

線形探索はデータが整列されていなくても使えるが効率が悪く、二分探索は整列されたデータに対して高速に探索できるが、データがソート済みである必要があるという特徴があります。線形探索はデータが少なく、データが整列されていない場合に適しており、二分...
アルゴリズムとプログラミング

【応用情報技術者試験】プログラム特性

プログラムの特性は、主に「リロケータブル(再配置可能)」「リユーザブル(再使用可能)」「リエントラント(再入可能)」「リカーシブ(再帰的)」の4つに分類されます。これらの特性は、プログラムがどのようにメモリ上で動作し、他のプログラムと連携す...
アルゴリズムとプログラミング

【応用情報技術者試験】TypeScriptとJavaScriptの違い

TypeScriptとJavaScriptの主な違いは、型付けの方式です。JavaScriptは動的型付け、TypeScriptは静的型付けを採用しています。これにより、TypeScriptはコードの実行前にエラーを発見しやすく、大規模開発...
アルゴリズムとプログラミング

【応用情報技術者試験】配列とリスト(ポインタ)

配列とは配列は、下のように同じデータ型の要素を番号順に並べたものを表します。また、この番号は添字(インデックス)と呼ばれます。添字は0スタートの場合と1スタートの場合がありますが、C言語を含む多くの言語は0スタートです。配列の場合、指定した...
アルゴリズムとプログラミング

【応用情報技術者試験】整列法

はじめにデータ整列(ソート)は、コンピュータサイエンスの基本的かつ重要な技術です。効率的な整列方法は、データの処理や検索のパフォーマンスを大きく向上させます。データ整列方法は大きく分けて以下の3つのカテゴリーに分類されます。逐次添加法分割統...
アルゴリズムとプログラミング

【応用情報技術者試験】2分木の探索

幅優先探索根から近い順に調べていく方式です。深さ優先探索根からできるだけ分岐せずにいちばん深い葉の部分にまで到達してから、ひとつ前の節まで戻り他方の探索を行う方式です。行きがけ順(先行順)「最初にノードを訪問する」タイミングが早い順に各ノー...