time complexity
時間計算量
名詞
time complexityは、アルゴリズムが処理するデータの量(入力サイズ)が増えたときに、実行時間がどのように増加するかを数学的に表現したものです。単に処理に何秒かかるかという絶対的な時間を指すのではなく、計算の手順がどれほど効率的であるかという増え方の傾向を評価するために用いられます。
計算量の表記法と評価
一般的に、Big O notation(ビッグオー記法)を用いて表現されます。例えば、入力サイズに比例して時間が線形に増える場合は O(n)、データの二乗に比例して増える場合は O(n^2) と表記します。これにより、異なるアルゴリズムを比較して、どちらがより大規模なデータセットに対して効率的に動作するかを客観的に判断することが可能です。
空間計算量との関係
アルゴリズムの効率性を評価する際は、time complexityだけでなく space complexity(空間計算量)も併せて検討されます。実行時間を短縮するためにメモリ使用量を増やす手法があるため、開発者は時間とメモリのトレードオフを考慮して最適な設計を選択する必要があります。
意味
名詞時間計算量
入力の長さを変数とする関数として、アルゴリズムの実行に要する時間を測定した指標であること
The time complexity of this sorting algorithm is O(n log n).
このソートアルゴリズムの時間計算量はO(n log n)である。
関連語
algorithmruntimeefficiencyperformancecomputationexecutionlatencyscalabilitycomplexityspace complexityiterationrecursionloopcyclestepinstructionoperationgrowth ratenotationbottleneckoptimizationheuristicsortingsearchingdata structurearraylinked listbinary treehash tablegraphstackqueueheapdynamic programmingbrute forceprocessorclock speedthroughputoverheadresourcememorybandwidthturing machinecomputabilitytractabilitylogarithmexponentcoefficientvariablefunctionlimitderivativeintegralsummationboundthresholdparallelismconcurrencysynchronizationschedulingpipelinecache