C言語での配列の基礎

1. 配列の概念 配列は、同じ型の要素の集合です。この定義には以下の2つの重要な点があります: 配列には1つ以上のデータを格納できますが、要素数は0にはなりません(変数を作成することは本質的にメモリ空間を確保することであり、要素数が0だとコンパイラがどの程度の空間を確保すべきかわかりません)。 配列に格納される複数のデータは同じ型である必 ...

8月8日 11:55 投稿

接頭和と差分配列の応用

接頭和 & 差分配列 計算量最適化のための基本技術 接頭和は複数回の区間クエリを高速化する手法。配列arr[N]に対してpre_sum[N]を構築し、 pre_sum[i] = pre_sum[i-1] + arr[i]と定義する。インデックスは1から始める必要がある。 実践問題 N都市を結ぶ道路があり、各セグメントの移動コストが与えられる。伝送装置を使って最大kセグメント飛躍可能。ただし1回の ...

7月24日 18:21 投稿

C++における二次元配列の実装と操作

二次元配列は、行と列の構造を持つデータ格納機構であり、C++では配列の配列として実現されます。この構造は行列的なデータ処理やゲーム開発、画像処理など、多次元データを扱う場面で広く利用されます。 宣言と初期化 二次元配列は、行数と列数を明示的に指定して宣言します。以下のように、静的サイズで宣言可能です: int grid[5][8]; // 5行8列の整数配列 初期化は ...

5月14日 20:27 投稿