亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? stl_tree.h

?? 粗慥集成算法集合 ,并有詳細(xì)的文檔資料和測試數(shù)據(jù)處
?? H
?? 第 1 頁 / 共 2 頁
字號(hào):
    { return (_Link_type&) _M_header._M_data->_M_parent; }
  _Link_type& _M_leftmost() const 
    { return (_Link_type&) _M_header._M_data->_M_left; }
  _Link_type& _M_rightmost() const 
    { return (_Link_type&) _M_header._M_data->_M_right; }

  static _Link_type& _S_left(_Link_type __x)
    { return (_Link_type&)(__x->_M_left); }
  static _Link_type& _S_right(_Link_type __x)
    { return (_Link_type&)(__x->_M_right); }
  static _Link_type& _S_parent(_Link_type __x)
    { return (_Link_type&)(__x->_M_parent); }
  static reference _S_value(_Link_type __x)
    { return __x->_M_value_field; }
  static const _Key& _S_key(_Link_type __x)
    { return _KeyOfValue()(_S_value(__x)); }
  static _Color_type& _S_color(_Link_type __x)
    { return (_Color_type&)(__x->_M_color); }

  static _Link_type& _S_left(_Base_ptr __x)
    { return (_Link_type&)(__x->_M_left); }
  static _Link_type& _S_right(_Base_ptr __x)
    { return (_Link_type&)(__x->_M_right); }
  static _Link_type& _S_parent(_Base_ptr __x)
    { return (_Link_type&)(__x->_M_parent); }
  static reference _S_value(_Base_ptr __x)
    { return ((_Link_type)__x)->_M_value_field; }
  static const _Key& _S_key(_Base_ptr __x)
    { return _KeyOfValue()(_S_value(_Link_type(__x)));} 
  static _Color_type& _S_color(_Base_ptr __x)
    { return (_Color_type&)(_Link_type(__x)->_M_color); }

  static _Link_type _S_minimum(_Link_type __x) 
    { return (_Link_type)  _Rb_tree_node_base::_S_minimum(__x); }

  static _Link_type _S_maximum(_Link_type __x)
    { return (_Link_type) _Rb_tree_node_base::_S_maximum(__x); }

public:
  typedef _Rb_tree_iterator<value_type, _Nonconst_traits<value_type> > iterator;
  typedef _Rb_tree_iterator<value_type, _Const_traits<value_type> > const_iterator;

#if defined ( __STL_CLASS_PARTIAL_SPECIALIZATION ) && \
! defined (__STL_PARTIAL_SPECIALIZATION_BUG)
    typedef __STLPORT_STD::reverse_iterator<const_iterator> const_reverse_iterator;
    typedef __STLPORT_STD::reverse_iterator<iterator> reverse_iterator;
#else /* __STL_CLASS_PARTIAL_SPECIALIZATION */
# if defined (__STL_MSVC50_COMPATIBILITY)
    typedef reverse_bidirectional_iterator<iterator, value_type, reference,
                                           pointer, difference_type>
        reverse_iterator; 
    typedef reverse_bidirectional_iterator<const_iterator, value_type,
        const_reference, const_pointer, difference_type>
	const_reverse_iterator;
# else
    typedef reverse_bidirectional_iterator<iterator, value_type, reference,
                                           difference_type>
        reverse_iterator; 
    typedef reverse_bidirectional_iterator<const_iterator, value_type,
                                           const_reference, difference_type>
        const_reverse_iterator;
# endif
#endif /* __STL_CLASS_PARTIAL_SPECIALIZATION */ 

private:
  iterator _M_insert(_Base_ptr __x, _Base_ptr __y, const value_type& __v);
  _Link_type _M_copy(_Link_type __x, _Link_type __p);
  void _M_erase(_Link_type __x);

public:
                                // allocation/deallocation
  _Rb_tree()
    : _Rb_tree_base<_Value, _Alloc>(allocator_type()), _M_node_count(0), _M_key_compare(_Compare())
    { _M_empty_initialize(); }

  _Rb_tree(const _Compare& __comp)
    : _Rb_tree_base<_Value, _Alloc>(allocator_type()), _M_node_count(0), _M_key_compare(__comp) 
    { _M_empty_initialize(); }

  _Rb_tree(const _Compare& __comp, const allocator_type& __a)
    : _Rb_tree_base<_Value, _Alloc>(__a), _M_node_count(0), _M_key_compare(__comp) 
    { _M_empty_initialize(); }

  _Rb_tree(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x) 
    : _Rb_tree_base<_Value, _Alloc>(__x.get_allocator()),
      _M_node_count(0), _M_key_compare(__x._M_key_compare)
  { 
    if (__x._M_root() == 0)
      _M_empty_initialize();
    else {
      _S_color(_M_header._M_data) = _S_rb_tree_red;
      _M_root() = _M_copy(__x._M_root(), _M_header._M_data);
      _M_leftmost() = _S_minimum(_M_root());
      _M_rightmost() = _S_maximum(_M_root());
    }
    _M_node_count = __x._M_node_count;
  }
  ~_Rb_tree() { clear(); }
  _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& 
  operator=(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x);

private:
  void _M_empty_initialize() {
    _S_color(_M_header._M_data) = _S_rb_tree_red; // used to distinguish header from 
                                          // __root, in iterator.operator++
    _M_root() = 0;
    _M_leftmost() = _M_header._M_data;
    _M_rightmost() = _M_header._M_data;
  }

public:    
                                // accessors:
  _Compare key_comp() const { return _M_key_compare; }

# if defined (__STL_DEBUG)
  iterator begin() { return _Make_iterator(_M_leftmost()); }
  const_iterator begin() const { return _Make_const_iterator(_M_leftmost()); }
  iterator end() { return _Make_iterator(_M_header._M_data); }
  const_iterator end() const { return _Make_const_iterator(_M_header._M_data); }
  void _Invalidate_iterator(const iterator& __it) { 
    __invalidate_iterator(&_M_iter_list,__it); 
  }
# else
  iterator begin() { return _M_leftmost(); }
  const_iterator begin() const { return _M_leftmost(); }
  iterator end() { return _M_header._M_data; }
  const_iterator end() const { return _M_header._M_data; }
# endif

  reverse_iterator rbegin() { return reverse_iterator(end()); }
  const_reverse_iterator rbegin() const { 
    return const_reverse_iterator(end()); 
  }
  reverse_iterator rend() { return reverse_iterator(begin()); }
  const_reverse_iterator rend() const { 
    return const_reverse_iterator(begin());
  } 
  bool empty() const { return _M_node_count == 0; }
  size_type size() const { return _M_node_count; }
  size_type max_size() const { return size_type(-1); }

  void swap(_Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __t) {
    __stl_debug_do(_M_iter_list._Swap_owners(__t._M_iter_list, true));
    __STLPORT_STD::swap(_M_header._M_data, __t._M_header._M_data);
    __STLPORT_STD::swap(_M_node_count, __t._M_node_count);
    __STLPORT_STD::swap(_M_key_compare, __t._M_key_compare);
  }
    
public:
                                // insert/erase
  pair<iterator,bool> insert_unique(const value_type& __x);
  iterator insert_equal(const value_type& __x);

  iterator insert_unique(iterator __position, const value_type& __x);
  iterator insert_equal(iterator __position, const value_type& __x);

#ifdef __STL_MEMBER_TEMPLATES  
  template<class _II>
  void insert_equal(_II __first, _II __last) {
    for ( ; __first != __last; ++__first)
      insert_equal(*__first);
  }
  template<class _II>
  void insert_unique(_II __first, _II __last) {
    for ( ; __first != __last; ++__first)
      insert_unique(*__first);
  }
#else /* __STL_MEMBER_TEMPLATES */
  void insert_unique(const_iterator __first, const_iterator __last) {
    for ( ; __first != __last; ++__first)
      insert_unique(*__first);
  }
  void insert_unique(const value_type* __first, const value_type* __last) {
    for ( ; __first != __last; ++__first)
      insert_unique(*__first);
  }
  void insert_equal(const_iterator __first, const_iterator __last) {
    for ( ; __first != __last; ++__first)
      insert_equal(*__first);
  }
  void insert_equal(const value_type* __first, const value_type* __last) {
    for ( ; __first != __last; ++__first)
      insert_equal(*__first);
  }
#endif /* __STL_MEMBER_TEMPLATES */

  void erase(iterator __position) {
    __stl_debug_check(__check_if_owner(&_M_iter_list,__position));
    __stl_verbose_assert(__position._M_node!=_M_header._M_data, _StlMsg_ERASE_PAST_THE_END);
    __stl_debug_do(_Invalidate_iterator(__position));
  _Link_type __y = 
    (_Link_type) _Rb_global_inst::_Rebalance_for_erase(__position._M_node,
						       _M_header._M_data->_M_parent,
						       _M_header._M_data->_M_left,
						       _M_header._M_data->_M_right);
  destroy_node(__y);
  --_M_node_count;
  }
  size_type erase(const key_type& __x);
  void erase(iterator __first, iterator __last);
  void erase(const key_type* __first, const key_type* __last);

  void clear() {
    if (_M_node_count != 0) {
      _M_erase(_M_root());
      _M_leftmost() = _M_header._M_data;
      _M_root() = 0;
      _M_rightmost() = _M_header._M_data;
      _M_node_count = 0;
      __stl_debug_do(_Invalidate_all());
    }
  }      

public:
                                // set operations:
  iterator find(const key_type& __x);
  const_iterator find(const key_type& __x) const;
  size_type count(const key_type& __x) const;
  iterator lower_bound(const key_type& __x);
  const_iterator lower_bound(const key_type& __x) const;
  iterator upper_bound(const key_type& __x);
  const_iterator upper_bound(const key_type& __x) const;
  pair<iterator,iterator> equal_range(const key_type& __x) {
    return pair<iterator, iterator>(lower_bound(__x), upper_bound(__x));
  }
  pair<const_iterator, const_iterator> equal_range(const key_type& __x) const {
    return pair<const_iterator,const_iterator>(lower_bound(__x),
					       upper_bound(__x));
  }

public:
                                // Debugging.
  bool __rb_verify() const;
};

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator==(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
           const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y)
{
  return __x.size() == __y.size() &&
         equal(__x.begin(), __x.end(), __y.begin());
}

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator<(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
          const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y)
{
  return lexicographical_compare(__x.begin(), __x.end(), 
                                 __y.begin(), __y.end());
}

#ifdef __STL_USE_SEPARATE_RELOPS_NAMESPACE

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator!=(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
           const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y) {
  return !(__x == __y);
}

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator>(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
          const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y) {
  return __y < __x;
}

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator<=(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
           const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y) {
  return !(__y < __x);
}

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline bool 
operator>=(const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
           const _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y) {
  return !(__x < __y);
}

#endif /* __STL_USE_SEPARATE_RELOPS_NAMESPACE */

#ifdef __STL_FUNCTION_TMPL_PARTIAL_ORDER

template <class _Key, class _Value, class _KeyOfValue, 
          class _Compare, class _Alloc>
inline void 
swap(_Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __x, 
     _Rb_tree<_Key,_Value,_KeyOfValue,_Compare,_Alloc>& __y)
{
  __x.swap(__y);
}

#endif /* __STL_FUNCTION_TMPL_PARTIAL_ORDER */
         

// Class rb_tree is not part of the C++ standard.  It is provided for
// compatibility with the HP STL.

template <class _Key, class _Value, class _KeyOfValue, class _Compare,
          __STL_DEFAULT_ALLOCATOR_SELECT(_Value) >
struct rb_tree : public _Rb_tree<_Key, _Value, _KeyOfValue, _Compare, _Alloc>
{
  typedef _Rb_tree<_Key, _Value, _KeyOfValue, _Compare, _Alloc> _Base;
  typedef typename _Base::allocator_type allocator_type;

  rb_tree()
     : _Rb_tree<_Key, _Value, _KeyOfValue, _Compare, _Alloc>(_Compare(), allocator_type()) {}
  rb_tree(const _Compare& __comp,
          const allocator_type& __a = __STL_ALLOC_INSTANCE(allocator_type))
    : _Rb_tree<_Key, _Value, _KeyOfValue, _Compare, _Alloc>(__comp, __a) {} 
  ~rb_tree() {}
};

# undef _Make_iterator
# undef _Make_const_iterator

#if defined(__sgi) && !defined(__GNUC__) && (_MIPS_SIM != _MIPS_SIM_ABI32)
#pragma reset woff 1375
#endif

__STL_END_NAMESPACE

# if !defined (__STL_LINK_TIME_INSTANTIATION)
#  include <stl_tree.c>
# endif

#endif /* __SGI_STL_INTERNAL_TREE_H */

// Local Variables:
// mode:C++
// End:

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情成人综合网| 国产精品色呦呦| 国产成人啪免费观看软件| 亚洲同性gay激情无套| 日韩免费高清av| 99久久精品费精品国产一区二区| 久久99国产精品成人| 一区二区三区资源| 国产蜜臀av在线一区二区三区 | 日韩视频在线你懂得| 国产精品99久久久久久有的能看| 一区二区三区中文字幕精品精品| 日韩va亚洲va欧美va久久| 国产精品久久久久天堂| 久久久国产精品麻豆| 欧美精品自拍偷拍| 日本韩国欧美一区二区三区| 国产成人h网站| 黄页视频在线91| 日本怡春院一区二区| 亚洲高清久久久| 亚洲人成亚洲人成在线观看图片| 国产色91在线| 久久九九99视频| 欧美成人精品福利| 欧美二区乱c少妇| 欧美色区777第一页| 一本久久综合亚洲鲁鲁五月天| 成人性生交大片免费看中文网站| 国产在线精品国自产拍免费| 日日夜夜一区二区| 一级中文字幕一区二区| 中文字幕日韩一区| 中文字幕在线不卡视频| 中文子幕无线码一区tr| 亚洲国产成人在线| 欧美激情在线观看视频免费| 久久久美女毛片| 精品福利一区二区三区 | 91在线视频免费观看| 成人午夜在线播放| 成人在线视频一区二区| 顶级嫩模精品视频在线看| 国产xxx精品视频大全| 国产精品综合二区| 福利一区二区在线| 99r国产精品| 色欧美片视频在线观看| 色悠悠亚洲一区二区| 91久久精品一区二区二区| 在线观看亚洲成人| 欧美这里有精品| 欧美日韩大陆一区二区| 欧美电影一区二区| 日韩欧美中文字幕精品| 久久久99精品免费观看不卡| 国产精品电影一区二区三区| 亚洲色图在线播放| 欧美高清一级片在线观看| 亚洲一区二区黄色| 欧美亚一区二区| 国产一区欧美一区| 午夜精品福利一区二区三区av| 亚洲精品视频免费看| 亚洲第一成年网| 蜜桃视频第一区免费观看| 国产一区二区三区不卡在线观看| 成人一区二区在线观看| 色婷婷av一区二区三区大白胸| 欧美日韩国产综合一区二区| 日韩精品一区二区三区视频 | 国产成人精品亚洲日本在线桃色| 成人黄色免费短视频| 在线中文字幕不卡| 日韩视频一区二区三区在线播放| 国产偷国产偷精品高清尤物| 亚洲综合免费观看高清在线观看| 青青草国产成人99久久| 成人av高清在线| 欧美一区二区三区四区在线观看| 国产免费成人在线视频| 天堂成人国产精品一区| 成人午夜精品在线| 亚洲成人tv网| 成人午夜激情在线| 欧美日韩电影在线| 国产三级精品视频| 亚洲国产成人av| 成人性生交大合| 欧美日韩大陆一区二区| 国产精品久久久久久久浪潮网站| 日本怡春院一区二区| 91麻豆免费观看| 精品日韩在线一区| 亚洲一区二区成人在线观看| 国产精品99久久久久久久女警| 欧美图片一区二区三区| 国产精品免费aⅴ片在线观看| 偷拍一区二区三区四区| 97精品电影院| 久久午夜电影网| 三级成人在线视频| 色久优优欧美色久优优| 国产日韩高清在线| 亚洲第一成人在线| 一本色道久久综合亚洲精品按摩| 久久蜜桃香蕉精品一区二区三区| 亚洲第一二三四区| 色天天综合久久久久综合片| 久久久激情视频| 韩国女主播成人在线| 欧美视频三区在线播放| 日韩毛片高清在线播放| 国产传媒久久文化传媒| 日韩欧美一区二区久久婷婷| 亚洲成人你懂的| 欧美亚洲国产怡红院影院| 国产精品久久久久久久午夜片| 国产精品自拍一区| 欧美www视频| 男女视频一区二区| 欧美视频你懂的| 午夜影院久久久| 国产美女一区二区三区| 91精品国产美女浴室洗澡无遮挡| 国产99久久久久| 亚洲视频在线一区二区| 色94色欧美sute亚洲13| 亚洲精品国产无天堂网2021| 久久婷婷国产综合国色天香| 国产精品夜夜嗨| 亚洲精品视频在线| 日韩视频免费直播| 东方欧美亚洲色图在线| 一区二区三区精品久久久| 26uuu精品一区二区三区四区在线| 久久亚洲综合色| 久久精品国产99久久6| 欧美xxxxxxxxx| 国产老妇另类xxxxx| 美腿丝袜亚洲一区| 欧美大胆人体bbbb| 精品一区二区免费| 久久精品人人做人人爽人人| 国产盗摄精品一区二区三区在线| 亚洲国产精品成人综合| 波多野洁衣一区| 一区二区三区在线观看欧美| 欧美视频一区二区| 美女视频黄免费的久久 | 精品国产一区二区三区av性色| 美女在线视频一区| 久久久国际精品| 97久久超碰国产精品| 亚洲一区二区三区四区五区黄 | 精品无码三级在线观看视频| 久久在线免费观看| 成人精品国产福利| 夜夜嗨av一区二区三区中文字幕| 欧美日韩国产影片| 裸体在线国模精品偷拍| 中文字幕成人在线观看| 欧洲在线/亚洲| 久久成人18免费观看| 国产精品三级在线观看| 精品视频色一区| 国产真实乱偷精品视频免| 中文字幕一区不卡| 欧美一区二区视频网站| 国产精品白丝jk黑袜喷水| 亚洲最新视频在线观看| 精品美女被调教视频大全网站| 国产成人在线观看| 午夜精品久久久久久久99水蜜桃| 久久综合五月天婷婷伊人| 99久久久无码国产精品| 日韩精品亚洲一区| 欧美激情资源网| 欧美人狂配大交3d怪物一区| 韩国精品主播一区二区在线观看 | 欧美一区二区三区人| 国产成人在线网站| 香蕉久久一区二区不卡无毒影院| 欧美伊人久久久久久久久影院| 91美女片黄在线观看| 亚洲美女屁股眼交3| 裸体一区二区三区| 成人午夜伦理影院| 欧美亚洲动漫精品| 精品久久久久久综合日本欧美| 日韩欧美国产一二三区| 久久日韩粉嫩一区二区三区| 国产精品系列在线| 亚洲国产精品久久人人爱| 久久精品二区亚洲w码| 99久久99久久久精品齐齐| 中文字幕欧美国产| 欧洲色大大久久| 风间由美一区二区av101| 日韩精品色哟哟|