「辞書」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
1行目: 1行目:
 
'''辞書'''(dictionary)とは、[[数字]]以外の[[添字]]を使用することができる[[配列]]のことです。
 
'''辞書'''(dictionary)とは、[[数字]]以外の[[添字]]を使用することができる[[配列]]のことです。
 +
 +
内部的には[[数字]]以外の[[添字]]を[[ハッシュ関数]]で数値化しているので「[[ハッシュテーブル]]」と呼ぶ[[プログラミング言語]]も存在します。
  
 
辞書をサポートする多くの[[プログラミング言語]]では数字や文字列だけでなくその他のデータ型も添字にできます。[[文字列]]を[[添字]]とする[[連想配列]]も辞書の一種です。
 
辞書をサポートする多くの[[プログラミング言語]]では数字や文字列だけでなくその他のデータ型も添字にできます。[[文字列]]を[[添字]]とする[[連想配列]]も辞書の一種です。
14行目: 16行目:
  
 
なお、[[プログラミング]]の技法のひとつである「[[参照テーブル]]」を指して「辞書」と呼ばれることがあります。
 
なお、[[プログラミング]]の技法のひとつである「[[参照テーブル]]」を指して「辞書」と呼ばれることがあります。
 +
 +
[[category: データ構造]]

2024年2月12日 (月) 07:47時点における最新版

辞書(dictionary)とは、数字以外の添字を使用することができる配列のことです。

内部的には数字以外の添字ハッシュ関数で数値化しているので「ハッシュテーブル」と呼ぶプログラミング言語も存在します。

辞書をサポートする多くのプログラミング言語では数字や文字列だけでなくその他のデータ型も添字にできます。文字列添字とする連想配列も辞書の一種です。

var dictionary:[String:Int] = [ "a":1, "b":2, "c": 3 ]

数字も添え字として使用できます。 一般的な数字を添え字とする配列と比べ辞書の場合は連番である必要がないという特徴があります。 ただしforループなどで回した場合はクソほど遅いです。

var dictionary:[Int:Int] = [ 0:1, 1:2, 4: 5 ]

なお、プログラミングの技法のひとつである「参照テーブル」を指して「辞書」と呼ばれることがあります。