配列単語

ハイレツ

  • 4
  • 0
掲示板をみる(1)
  • twitter
  • facebook
  • はてな
  • LINE
  • ほめる(4)
  •  
  •  
  •  
  •  
  • その他

配列(array)とは、プログラミング言語において多数の同様なデータを扱う際に用いられるデータ構造の一種である。

概要

例えば、ここにあるクラスで実施された数学の試験の点数のデータが有るとしよう。このデータを配列のプログラミング言語で一度に扱おうとすると math1, math2, …… , math40, …… のような変数を一々用意しなければならない。しかしこれはあまりにも面倒であるため、普通プログラミング言語によって簡単に複数の似たようなデータを扱える配列というデータ構造が用意されている。

配列 math にデータが格納されるとすると、前述のデータmath[1], math[2], …… のようにアクセスする事が出来る。ここの 1 や 2 といった数字は添字と呼ばれ、0 か 1 から始まる非負整数によって定する事が多い。0から始まるものを0オリジン、1から始まるものを1オリジンと呼ぶことがある。

更に変数を添字に定する事によって動的にアクセスするデータを変更できる点が、通常の変数にはい大きな利点となる。たとえば math[n] と書いておけば、変数 n に 4 が格納されていれば 4 番、n に 5 が格納されていれば 5 番データを取り出す事が出来る。

通常は配列を宣言する場合にその大きさ(長さ)を定するが、大きさを定せずとも必要に応じてデータ領域を確保するような配列も有る。それらは動的配列と呼ばれる。動的配列が作成可かどうかはプログラミング言語依存する。

連想配列

一部のプログラミング言語には、連想配列(associative array)といって数値以外の文字列等を添字として定できるデータ構造を持つものがある。これによってどのようなデータアクセスしているのかをより直感的に理解できるようになる場合が有る。例えば、A さんの試験の結果を配列に格納する場合、A[0] に英語 A[1] に数学の点数を格納する、と記述するよりも A["english"] と A["math"] に格納するとした方が分かり易い。

写像の一種とみなすことが出来るのでMapとか、添字を見出しに見立ててDictionaryとも呼ばれる。

多次元配列

また、配列を二次元以上にできる多次元配列を実現できるプログラミング言語も有る。これにより、例えばクラス全員の試験結果を多次元配列 ExamData に格納して、ExamData[3]["english"] で 出席番号 3(添字が0から始まる場合は4番) の生徒英語の成績にアクセスするように出来る。

オブジェクトとの違い

連想配列に似た構造を持つ物体にオブジェクトがあるが、連想配列とオブジェクトは異なる概念である。

連想配列というのはあくまでグループ化されたデータや統計化されたデータを扱いやすくするものであるのに対し、オブジェクトとはデータが持つ特徴や属性、数値を分類させたものである。

一応はどっちでも記述できるが、それらのデータグループに属するのか、あるいは個のデータの関連情報を見たいのかで使い分けるといいだろう。

関連項目

この記事を編集する

掲示板

  • 1ななしのよっしん

    2020/09/22(火) 12:04:42 ID: nvXbFTQ69+

    配列はテンソルか?

おすすめトレンド

急上昇ワード改

最終更新:2021/06/15(火) 19:00

ほめられた記事

最終更新:2021/06/15(火) 19:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

タグ編集にはログインが必要です。

タグ編集には利用規約の同意が必要です。

TOP