Map
mapはバイナリナビゲーションツリーで実現
keyとvalue構成>>std::pair(実装)の使用
関数オブジェクトを提供し、キー値を比較してhash mapの要素を比較することで、hash mapの相対順序を決定できます.
2つのパラメータを受け入れて、左側が右側より小さいかどうかtrue falseを返します.
メンバーのタイプ
tree_type self tree n.関数
keyとvalue構成>>std::pair(実装)の使用
template < class Key, class T, class Compare = less<Key>,
class Alloc = allocator<pair<const Key,T> > > class map;
< class > compare
関数オブジェクトを提供し、キー値を比較してhash mapの要素を比較することで、hash mapの相対順序を決定できます.
std::less< T >
2つのパラメータを受け入れて、左側が右側より小さいかどうかtrue falseを返します.
メンバーのタイプ
private
n.関数
construct
map (const key_compare& comp = key_compare(),
const allocator_type& alloc = allocator_type());
template <class InputIterator>
map (InputIterator first, InputIterator last,
const key_compare& comp = key_compare(),
const allocator_type& alloc = allocator_type());
map (const map& x);
destructor
~map();
operator=
map& operator= (const map& x);
- Iterators
begin / end / rbegin / rend
iterator OOO();
const_iterator OOO() const;
- Capacity
size
size_type size() const;
=> return (len)
max_size
size_type max_size() const;
return (numeric_limits<difference_type>::max() / sizeof(T))
empty
bool empty() const;
return (this->len == 0)
- Element access
operator[]
mapped_type& operator[] (const key_type& k);
- Modifiers
insert
pair<iterator,bool> insert (const value_type& val);
iterator insert (iterator position, const value_type& val);
template <class InputIterator>
void insert (InputIterator first, InputIterator last);
erase
void erase (iterator position);
size_type erase (const key_type& k);
void erase (iterator first, iterator last);
swap
void swap (map& x);
clear
void clear();
- Observers
key_comp
key_compare key_comp() const;
value_comp
value_compare key_comp() const;
- Operations
find
iterator find (const key_type& k);
const_iterator find (const key_type& k) const;
count
size_type count (const key_type& k) const;
lower_bound / upper_bound
iterator OOO_bound (const key_type& k);
const_iterator OOO_bound (const key_type& k) const;
equal_range
pair<const_iterator,const_iterator> equal_range (const key_type& k) const;
pair<iterator,iterator> equal_range (const key_type& k);
Reference
この問題について(Map), 我々は、より多くの情報をここで見つけました
https://velog.io/@hopark/Map
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
map (const key_compare& comp = key_compare(),
const allocator_type& alloc = allocator_type());
template <class InputIterator>
map (InputIterator first, InputIterator last,
const key_compare& comp = key_compare(),
const allocator_type& alloc = allocator_type());
map (const map& x);
~map();
map& operator= (const map& x);
iterator OOO();
const_iterator OOO() const;
size_type size() const;
size_type max_size() const;
return (numeric_limits<difference_type>::max() / sizeof(T))
bool empty() const;
return (this->len == 0)
mapped_type& operator[] (const key_type& k);
pair<iterator,bool> insert (const value_type& val);
iterator insert (iterator position, const value_type& val);
template <class InputIterator>
void insert (InputIterator first, InputIterator last);
void erase (iterator position);
size_type erase (const key_type& k);
void erase (iterator first, iterator last);
void swap (map& x);
void clear();
key_compare key_comp() const;
value_compare key_comp() const;
iterator find (const key_type& k);
const_iterator find (const key_type& k) const;
size_type count (const key_type& k) const;
iterator OOO_bound (const key_type& k);
const_iterator OOO_bound (const key_type& k) const;
pair<const_iterator,const_iterator> equal_range (const key_type& k) const;
pair<iterator,iterator> equal_range (const key_type& k);
Reference
この問題について(Map), 我々は、より多くの情報をここで見つけました https://velog.io/@hopark/Mapテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol