Open a-mochi opened 8 years ago
@TMogi さん C+意識していること
速さもメモリ使用量も違う
これらは呼び方が違うだけ(厳密にいうと内部のデータ構造や実装方法は違う可能性があるけど、同じものと思ってよい) ハッシュテーブル(一般的なデータ構造) ハッシュ(Ruby, Perl) 連想配列(awkとか) 辞書(Python) C++のmapは2分木
@soe-j < Rubyのハッシュ(連想配列)は違うものですよね @aoyama-val さん < おなじです @soe-j < (がびーん)
Rubyの連想配列も同じような計算をして格納している(同じとは言っていない)
hash値が被っちゃったら、一個ずらすとかやり方がある
データ量がでかい時
早い O(1) O(log n) O(n) O(n^2) 遅い
O(1) いくつデータがあっても同じ回数の処理で済む
O(n)はどうせ大雑把な記法なので、 どの順に速いかとどのアルゴリズムがどれになるかを丸暗記しておけばいいと思います。
ポインタは値の入っているアドレスを指してる
ポインタは、メモリ中の"とあるアドレス"が入ってる
ポインタと参照の違いを理解してもらうには説明が難しい…
青山、福本、茂木、添田