週末にプログラミング コンテストに参加する予定ですが、std::vector と std::map のどちらを使用すればよいですか? それらを単に配列として使用しますが、どちらが優れているか混乱しています(主に基本操作の速度)?
私はこの写真をstackoverflowで見ましたが、これらの主な違いはどれかわかりません...
写真は、ベクトルの方が速いことを示唆しています...どうすればよいか本当にわかりません。助けてください!配列のようにのみ使用する必要がありますが、動的サイズで使用する必要があります...よろしくお願いします。
編集 私はおそらく整数の2D配列を取得します(たとえば、都市や迷宮の地図で、グラフアルゴリズムまたは動的プログラミングで解決できるある種の問題が与えられるでしょう)ので、必要なものは: 「テーブル」の特定のセルの書き込み、読み取り、特定の値の検索、それだけだと思います。std::map はメモリ内の完全な N*M サイズのテーブルを見つけられないと聞きましたが、値ごとに実行します...メモリ使用量が少ないというのは本当ですか?
ばかげて申し訳ありませんが、私が知っていることすべてを学んだ本当の教師はいません。データ構造 (2-3 木、赤黒木、二項ヒープなど...) について学び始めたところです。