
No.3ベストアンサー
- 回答日時:
vector と list の違いというか,動的配列とリストの違いと言うべきでしょうか?
//--------------------------------------------------------
< 動的配列の特徴 >
・ランダムアクセスが得意
・シーケンシャルアクセス (順次アクセス) が得意
・挿入,削除が苦手
・動的なサイズ変更が苦手
< リストの特徴 >
・ランダムアクセスが苦手
・シーケンシャルアクセスが得意
・挿入,削除が得意
・動的サイズ変更が得意
※ここでは "得意 = 速い","苦手 = 遅い" と考えても OK です.
//--------------------------------------------------------
以上の特徴はそれぞれのデータ構造の違いからくるものです.
これらの特徴が分かれば "同じ" とは思わない (思えなくなる) ハズです.
使う際にはそれらの特徴を十分に吟味し,今使用するべきはどちらかを考える必要がありますね.
また,この特徴をより理解するためにはデータ構造について学習する必要があります.
STL を使うのではなく一度自分で動的配列クラスやリストクラスを作成してみると,その違いが歴然と分かると思います.
理解のために,頑張って!
No.2
- 回答日時:
>つまりlistはvectorの機能を含む拡張版みたいなもの、こう考えてよろしいのでしょうか?
両者のクラスに実装されているメソッドを比較してみるのがよろしいかと。
No.1
- 回答日時:
> vectorとlistの違いって何なんでしょうか。
「データ構造」の違いです。
何かを処理するとき、あらかじめ並び順や置き方を考えておくとやりやすい、そのやり方が違います。
> vectorは動的な配列の確保でlistも動的な配列だけど双方向探索やソートもできる、
vectorでもSTLで双方向探索やソートができます。
違うのは、それぞれの効率などです。
この処理はvectorの方が向いているので速い、でもこれはlistの方が速い。
「データ構造」と「アルゴリズム」には相性があり、向き不向きがあります。
> つまりlistはvectorの機能を含む拡張版みたいなもの、こう考えてよろしいのでしょうか?
シンプルなvectorが基本だとは思いますが、必ずしもlistが拡張は思えません。
どちらかと言うと別物です。
> いまいちvectorとlistが同じようなものに見えて仕方ないのです・・。
「データ構造」や「アルゴリズム」の特性/特徴を理解せずに見れば、
使い勝手としては大差ないです。
(ある程度同じ方法で使えるようにできてるのがSTLですから)
データ構造について勉強してみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# このプログラミング誰か教えてください 9 2022/04/22 18:50
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- ブルーレイ・プレーヤー・レコーダー BD-REについて教えてください。 3 2022/11/10 23:28
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- 邦楽 ほぼ罪人悪人だらけの皆さんは、誰のどのような曲を聴いて、心を浄化・平静に保っている? 6 2022/05/20 15:01
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- C言語・C++・C# このプログラミング誰か教えてください。 2 2022/04/22 18:48
- フリーソフト Vector フリーソフト 卓上カレンダー Windows10での作動は? 2 2022/06/11 19:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
vba フィルター 複数条件 3つ以...
-
Excel2010のinputboxで複数デー...
-
ジャグ配列生成時の1オリジン
-
配列のペースト出力結果の書式...
-
1次元配列をワークシートに高...
-
excel vbaの配列なんですが・・・
-
配列の中から最大値だけ取り出...
-
C#でbyte配列から画像を表示さ...
-
VBA 桁数が混在するソート
-
VB.NETにて、構造体へデータを...
-
free()関数の多用 と Segment...
-
countif/sumifのようなVBA関数
-
エクセルでXY座標に並べられた...
-
COBOLの基本的な事なので...
-
C言語 ポインタと配列
-
エクセル(VBA)の空白配列の削除...
-
Redim とEraseの違いは?
-
大量の変数を定義するにはどう...
-
2次元配列を部分的に削除する方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
vba フィルター 複数条件 3つ以...
-
C#でbyte配列から画像を表示さ...
-
配列の中の最大値とそのインデ...
-
エクセルでXY座標に並べられた...
-
Dir関数で読み取り順を操作でき...
-
配列のペースト出力結果の書式...
-
COBOLの基本的な事なので...
-
複数のtextboxの処理を一括で行...
-
構造体配列の特定のメンバーをF...
-
大量の変数を定義するにはどう...
-
CheckBoxの配列化
-
Excelのメモリ(配列)の上限は2G...
-
VB6のメモリ解放に関して
-
ReDim PreserveよりもReDimが遅い
-
Excel2010のinputboxで複数デー...
-
定数配列の書き方
-
コンボボックスのインデックス...
-
EXCELを使って、アクセスログを...
-
レコードセットの中身を配列に...
おすすめ情報