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

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

?? xtree

?? C標(biāo)準(zhǔn)庫源代碼,能提高對(duì)C的理解,不錯(cuò)的哦
??
?? 第 1 頁 / 共 2 頁
字號(hào):
                                                break; }}
                                else
                                        {_Nodeptr _W = _Left(_Parent(_X));
                                        if (_Color(_W) == _Red)
                                                {_Color(_W) = _Black;
                                                _Color(_Parent(_X)) = _Red;
                                                _Rrotate(_Parent(_X));
                                                _W = _Left(_Parent(_X)); }
                                        if (_Color(_Right(_W)) == _Black
                                                && _Color(_Left(_W)) == _Black)
                                                {_Color(_W) = _Red;
                                                _X = _Parent(_X); }
                                        else
                                                {if (_Color(_Left(_W)) == _Black)
                                                        {_Color(_Right(_W)) = _Black;
                                                        _Color(_W) = _Red;
                                                        _Lrotate(_W);
                                                        _W = _Left(_Parent(_X)); }
                                                _Color(_W) = _Color(_Parent(_X));
                                                _Color(_Parent(_X)) = _Black;
                                                _Color(_Left(_W)) = _Black;
                                                _Rrotate(_Parent(_X));
                                                break; }}
                        _Color(_X) = _Black; }
                _Destval(&_Value(_Y));
                _Freenode(_Y);
                --_Size;
                return (_P); }
        iterator erase(iterator _F, iterator _L)
                {if (size() == 0 || _F != begin() || _L != end())
                        {while (_F != _L)
                                erase(_F++);
                        return (_F); }
                else
                        {_Lockit Lk;
                        _Erase(_Root());
                        _Root() = _Nil, _Size = 0;
                        _Lmost() = _Head, _Rmost() = _Head;
                        return (begin()); }}
        size_type erase(const _K& _X)
                {_Pairii _P = equal_range(_X);
                size_type _N = 0;
                _Distance(_P.first, _P.second, _N);
                erase(_P.first, _P.second);
                return (_N); }
        void erase(const _K *_F, const _K *_L)
                {for (; _F != _L; ++_F)
                        erase(*_F); }
        void clear()
                {erase(begin(), end()); }
        iterator find(const _K& _Kv)
                {iterator _P = lower_bound(_Kv);
                return (_P == end()
                        || key_compare(_Kv, _Key(_P._Mynode()))
                                ? end() : _P); }
        const_iterator find(const _K& _Kv) const
                {const_iterator _P = lower_bound(_Kv);
                return (_P == end()
                        || key_compare(_Kv, _Key(_P._Mynode()))
                                ? end() : _P); }
        size_type count(const _K& _Kv) const
                {_Paircc _Ans = equal_range(_Kv);
                size_type _N = 0;
                _Distance(_Ans.first, _Ans.second, _N);
                return (_N); }
        iterator lower_bound(const _K& _Kv)
                {return (iterator(_Lbound(_Kv))); }
        const_iterator lower_bound(const _K& _Kv) const
                {return (const_iterator(_Lbound(_Kv))); }
        iterator upper_bound(const _K& _Kv)
                {return (iterator(_Ubound(_Kv))); }
        const_iterator upper_bound(const _K& _Kv) const
                {return (iterator(_Ubound(_Kv))); }
        _Pairii equal_range(const _K& _Kv)
                {return (_Pairii(lower_bound(_Kv), upper_bound(_Kv))); }
        _Paircc equal_range(const _K& _Kv) const
                {return (_Paircc(lower_bound(_Kv), upper_bound(_Kv))); }
        void swap(_Myt& _X)
                {std::swap(key_compare, _X.key_compare);
                if (allocator == _X.allocator)
                        {std::swap(_Head, _X._Head);
                        std::swap(_Multi, _X._Multi);
                        std::swap(_Size, _X._Size); }
                else
                        {_Myt _Ts = *this; *this = _X, _X = _Ts; }}
        friend void swap(_Myt& _X, _Myt& _Y)
                {_X.swap(_Y); }
protected:
        static _Nodeptr _Nil;
        static size_t _Nilrefs;
        void _Copy(const _Myt& _X)
                {_Lockit _Lk;
                _Root() = _Copy(_X._Root(), _Head);
                _Size = _X.size();
                if (_Root() != _Nil)
                        {_Lmost() = _Min(_Root());
                        _Rmost() = _Max(_Root()); }
                else
                        _Lmost() = _Head, _Rmost() = _Head; }
        _Nodeptr _Copy(_Nodeptr _X, _Nodeptr _P)
                {_Lockit _Lk;
                _Nodeptr _R = _X;
                for (; _X != _Nil; _X = _Left(_X))
                        {_Nodeptr _Y = _Buynode(_P, _Color(_X));
                        if (_R == _X)
                                _R = _Y;
                        _Right(_Y) = _Copy(_Right(_X), _Y);
                        _Consval(&_Value(_Y), _Value(_X));
                        _Left(_P) = _Y;
                        _P = _Y; }
                _Left(_P) = _Nil;
                return (_R); }
        void _Erase(_Nodeptr _X)
                {_Lockit _Lk;
                for (_Nodeptr _Y = _X; _Y != _Nil; _X = _Y)
                        {_Erase(_Right(_Y));
                        _Y = _Left(_Y);
                        _Destval(&_Value(_X));
                        _Freenode(_X); }}
        void _Init()
                {_Lockit _Lk;
                if (_Nil == 0)
                        {_Nil = _Buynode(0, _Black);
                        _Left(_Nil) = 0, _Right(_Nil) = 0; }
                ++_Nilrefs;
                _Head = _Buynode(_Nil, _Red), _Size = 0;
                _Lmost() = _Head, _Rmost() = _Head; }
        iterator _Insert(_Nodeptr _X, _Nodeptr _Y, const _Ty& _V)
                {_Lockit _Lk;
                _Nodeptr _Z = _Buynode(_Y, _Red);
                _Left(_Z) = _Nil, _Right(_Z) = _Nil;
                _Consval(&_Value(_Z), _V);
                ++_Size;
                if (_Y == _Head || _X != _Nil
                        || key_compare(_Kfn()(_V), _Key(_Y)))
                        {_Left(_Y) = _Z;
                        if (_Y == _Head)
                                {_Root() = _Z;
                                _Rmost() = _Z; }
                        else if (_Y == _Lmost())
                                _Lmost() = _Z; }
                else
                        {_Right(_Y) = _Z;
                        if (_Y == _Rmost())
                                _Rmost() = _Z; }
                for (_X = _Z; _X != _Root()
                        && _Color(_Parent(_X)) == _Red; )
                        if (_Parent(_X) == _Left(_Parent(_Parent(_X))))
                                {_Y = _Right(_Parent(_Parent(_X)));
                                if (_Color(_Y) == _Red)
                                        {_Color(_Parent(_X)) = _Black;
                                        _Color(_Y) = _Black;
                                        _Color(_Parent(_Parent(_X))) = _Red;
                                        _X = _Parent(_Parent(_X)); }
                                else
                                        {if (_X == _Right(_Parent(_X)))
                                                {_X = _Parent(_X);
                                                _Lrotate(_X); }
                                        _Color(_Parent(_X)) = _Black;
                                        _Color(_Parent(_Parent(_X))) = _Red;
                                        _Rrotate(_Parent(_Parent(_X))); }}
                        else
                                {_Y = _Left(_Parent(_Parent(_X)));
                                if (_Color(_Y) == _Red)
                                        {_Color(_Parent(_X)) = _Black;
                                        _Color(_Y) = _Black;
                                        _Color(_Parent(_Parent(_X))) = _Red;
                                        _X = _Parent(_Parent(_X)); }
                                else
                                        {if (_X == _Left(_Parent(_X)))
                                                {_X = _Parent(_X);
                                                _Rrotate(_X); }
                                        _Color(_Parent(_X)) = _Black;
                                        _Color(_Parent(_Parent(_X))) = _Red;
                                        _Lrotate(_Parent(_Parent(_X))); }}
                _Color(_Root()) = _Black;
                return (iterator(_Z)); }
        _Nodeptr _Lbound(const _K& _Kv) const
                {_Lockit _Lk;
                _Nodeptr _X = _Root();
                _Nodeptr _Y = _Head;
                while (_X != _Nil)
                        if (key_compare(_Key(_X), _Kv))
                                _X = _Right(_X);
                        else
                                _Y = _X, _X = _Left(_X);
                return (_Y); }
        _Nodeptr& _Lmost()
                {return (_Left(_Head)); }
        _Nodeptr& _Lmost() const
                {return (_Left(_Head)); }
        void _Lrotate(_Nodeptr _X)
                {_Lockit _Lk;
                _Nodeptr _Y = _Right(_X);
                _Right(_X) = _Left(_Y);
                if (_Left(_Y) != _Nil)
                        _Parent(_Left(_Y)) = _X;
                _Parent(_Y) = _Parent(_X);
                if (_X == _Root())
                        _Root() = _Y;
                else if (_X == _Left(_Parent(_X)))
                        _Left(_Parent(_X)) = _Y;
                else
                        _Right(_Parent(_X)) = _Y;
                _Left(_Y) = _X;
                _Parent(_X) = _Y; }
        static _Nodeptr _Max(_Nodeptr _P)
                {_Lockit _Lk;
                while (_Right(_P) != _Nil)
                        _P = _Right(_P);
                return (_P); }
        static _Nodeptr _Min(_Nodeptr _P)
                {_Lockit _Lk;
                while (_Left(_P) != _Nil)
                        _P = _Left(_P);
                return (_P); }
        _Nodeptr& _Rmost()
                {return (_Right(_Head)); }
        _Nodeptr& _Rmost() const
                {return (_Right(_Head)); }
        _Nodeptr& _Root()
                {return (_Parent(_Head)); }
        _Nodeptr& _Root() const
                {return (_Parent(_Head)); }
        void _Rrotate(_Nodeptr _X)
                {_Lockit _Lk;
                _Nodeptr _Y = _Left(_X);
                _Left(_X) = _Right(_Y);
                if (_Right(_Y) != _Nil)
                        _Parent(_Right(_Y)) = _X;
                _Parent(_Y) = _Parent(_X);
                if (_X == _Root())
                        _Root() = _Y;
                else if (_X == _Right(_Parent(_X)))
                        _Right(_Parent(_X)) = _Y;
                else
                        _Left(_Parent(_X)) = _Y;
                _Right(_Y) = _X;
                _Parent(_X) = _Y; }
        _Nodeptr _Ubound(const _K& _Kv) const
                {_Lockit _Lk;
                _Nodeptr _X = _Root();
                _Nodeptr _Y = _Head;
                while (_X != _Nil)
                        if (key_compare(_Kv, _Key(_X)))
                                _Y = _X, _X = _Left(_X);
                        else
                                _X = _Right(_X);
                return (_Y); }
        _Nodeptr _Buynode(_Nodeptr _Parg, _Redbl _Carg)
                {_Nodeptr _S = (_Nodeptr)allocator._Charalloc(
                        1 * sizeof (_Node));
                _Parent(_S) = _Parg;
                _Color(_S) = _Carg;
                return (_S); }
        void _Consval(_Tptr _P, const _Ty& _V)
                {_Construct(&*_P, _V); }
        void _Destval(_Tptr _P)
                {_Destroy(&*_P); }
        void _Freenode(_Nodeptr _S)
                {allocator.deallocate(_S, 1); }
        _A allocator;
        _Pr key_compare;
        _Nodeptr _Head;
        bool _Multi;
        size_type _Size;
        };
template<class _K, class _Ty, class _Kfn, class _Pr, class _A>
        _Tree<_K, _Ty, _Kfn, _Pr, _A>::_Nodeptr
                _Tree<_K, _Ty, _Kfn, _Pr, _A>::_Nil = 0;
template<class _K, class _Ty, class _Kfn, class _Pr, class _A>
        size_t _Tree<_K, _Ty, _Kfn, _Pr, _A>::_Nilrefs = 0;
                // tree TEMPLATE OPERATORS
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator==(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (_X.size() == _Y.size()
                && equal(_X.begin(), _X.end(), _Y.begin())); }
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator!=(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (!(_X == _Y)); }
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator<(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (lexicographical_compare(_X.begin(), _X.end(),
                _Y.begin(), _Y.end())); }
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator>(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (_Y < _X); }
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator<=(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (!(_Y < _X)); }
template<class _K, class _Ty, class _Kfn,
        class _Pr, class _A> inline
        bool operator>=(const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _X,
                const _Tree<_K, _Ty, _Kfn, _Pr, _A>& _Y)
        {return (!(_X < _Y)); }
_STD_END
#ifdef  _MSC_VER
#pragma pack(pop)
#endif  /* _MSC_VER */

#endif /* _XTREE_ */

/*
 * Copyright (c) 1995 by P.J. Plauger.  ALL RIGHTS RESERVED. 
 * Consult your license regarding permissions and restrictions.
 */

/*
 * This file is derived from software bearing the following
 * restrictions:
 *
 * Copyright (c) 1994
 * Hewlett-Packard Company
 *
 * Permission to use, copy, modify, distribute and sell this
 * software and its documentation for any purpose is hereby
 * granted without fee, provided that the above copyright notice
 * appear in all copies and that both that copyright notice and
 * this permission notice appear in supporting documentation.
 * Hewlett-Packard Company makes no representations about the
 * suitability of this software for any purpose. It is provided
 * "as is" without express or implied warranty.
 */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久欧美中文字幕| 亚洲成人一二三| 床上的激情91.| 国产日韩视频一区二区三区| 成人免费视频网站在线观看| 久久久不卡网国产精品一区| 国产成人精品免费一区二区| 国产精品国产三级国产普通话蜜臀 | 日韩成人精品视频| 91精品国产入口| 国产自产v一区二区三区c| xf在线a精品一区二区视频网站| 国产精品亚洲一区二区三区妖精| 国产精品区一区二区三区| 91最新地址在线播放| 亚洲一区二区在线视频| 日韩丝袜情趣美女图片| 成人免费观看男女羞羞视频| 艳妇臀荡乳欲伦亚洲一区| 欧美一级国产精品| 成人性视频网站| 亚洲国产三级在线| 久久网站热最新地址| 91丨porny丨在线| 男男成人高潮片免费网站| 国产日产精品1区| 91黄色激情网站| 日本人妖一区二区| 中文子幕无线码一区tr| 一本色道亚洲精品aⅴ| 日本最新不卡在线| 一区视频在线播放| 91精品一区二区三区在线观看| 韩国精品主播一区二区在线观看| 亚洲欧洲日产国码二区| 日韩西西人体444www| 成人高清在线视频| 美女脱光内衣内裤视频久久影院| 亚洲欧美偷拍卡通变态| 久久久蜜臀国产一区二区| 欧美视频在线播放| 国产成人夜色高潮福利影视| 亚洲sss视频在线视频| 中文字幕乱码久久午夜不卡| 制服丝袜亚洲播放| 91麻豆免费看片| 韩国av一区二区三区在线观看| 亚洲一区二区偷拍精品| 国产精品国产三级国产aⅴ中文| 欧美一区午夜精品| 欧美主播一区二区三区美女| 国产999精品久久| 久久电影网电视剧免费观看| 五月婷婷综合网| 亚洲另类春色校园小说| 日本一区二区三区久久久久久久久不| 欧美一级搡bbbb搡bbbb| 欧美午夜免费电影| 色婷婷综合中文久久一本| 成人综合婷婷国产精品久久| 麻豆免费精品视频| 午夜久久久久久电影| 亚洲一区二区美女| 亚洲精品久久嫩草网站秘色| 中文天堂在线一区| 国产亚洲欧美在线| 亚洲精品一区二区三区香蕉| 欧美日韩国产精品自在自线| 色综合视频一区二区三区高清| 成人ar影院免费观看视频| 国产精品亚洲第一| 国产98色在线|日韩| 国产一二精品视频| 国产盗摄一区二区三区| 国产精品中文字幕欧美| 国产91在线观看丝袜| 国产福利一区二区三区| 国产成人福利片| 国产成人精品在线看| 成人h动漫精品一区二| 成人开心网精品视频| www.一区二区| 色综合天天性综合| 在线观看av一区二区| 精品粉嫩超白一线天av| 欧美刺激午夜性久久久久久久| 欧美电视剧在线观看完整版| 久久久99免费| 国产精品私人影院| 亚洲免费观看高清在线观看| 亚洲一区二区av电影| 日韩精品91亚洲二区在线观看| 奇米888四色在线精品| 黄一区二区三区| 国产成人精品网址| 91久久精品一区二区三| 欧美亚洲高清一区| 欧美一级黄色录像| 中文一区在线播放| 亚洲一区av在线| 久久超碰97中文字幕| 成人中文字幕在线| 欧洲人成人精品| 日韩欧美不卡在线观看视频| 国产日产亚洲精品系列| 亚洲丝袜另类动漫二区| 午夜影院在线观看欧美| 狠狠色丁香九九婷婷综合五月| 成人免费av资源| 91在线国产福利| 中文字幕一区av| 中文字幕日韩精品一区| 亚洲品质自拍视频网站| 亚洲另类在线一区| 美女视频黄a大片欧美| 日日夜夜一区二区| 国产一区美女在线| 97se亚洲国产综合自在线| 欧美久久久久久久久中文字幕| 日韩欧美中文字幕制服| 国产精品久99| 免费成人av资源网| 国产伦精品一区二区三区免费迷 | 欧美国产一区二区在线观看| 亚洲蜜桃精久久久久久久| 欧美bbbbb| 色猫猫国产区一区二在线视频| 欧美不卡一区二区三区| 亚洲色图一区二区| 国产一区在线看| 欧美高清视频一二三区| **性色生活片久久毛片| 看电视剧不卡顿的网站| 色综合久久久久综合| xnxx国产精品| 日本中文字幕一区| 91成人在线免费观看| 欧美国产日韩亚洲一区| 久久99国产乱子伦精品免费| 欧美性感一区二区三区| 国产女主播在线一区二区| 免费成人小视频| 欧美精品tushy高清| 亚洲丝袜自拍清纯另类| 国产精品一区在线观看你懂的| 4438亚洲最大| 亚洲国产日韩综合久久精品| av电影在线观看一区| 久久麻豆一区二区| 免费精品视频在线| 欧美高清激情brazzers| 亚洲一区二区高清| 色呦呦一区二区三区| 国产精品情趣视频| 国产福利一区二区三区视频| 久久影院电视剧免费观看| 亚洲成人自拍一区| 欧美丝袜自拍制服另类| 亚洲免费伊人电影| 色哟哟精品一区| 亚洲日本丝袜连裤袜办公室| 丁香婷婷深情五月亚洲| 国产亚洲综合色| 国产一区二区三区在线观看免费 | 欧美精品一区二| 日韩成人午夜精品| 337p亚洲精品色噜噜狠狠| 亚洲午夜在线观看视频在线| 91久久精品网| 日韩精品五月天| 精品毛片乱码1区2区3区| 久久久精品免费观看| 欧美日韩精品系列| 91美女片黄在线| 久久无码av三级| 88在线观看91蜜桃国自产| 美女在线一区二区| 亚洲色图欧美激情| 国产午夜精品久久久久久免费视| 国产高清不卡二三区| 日韩在线一二三区| 亚洲综合一区二区三区| 日韩精品中文字幕在线不卡尤物| 粉嫩一区二区三区在线看| www.日韩精品| 成人h动漫精品一区二区| 欧美精品1区2区| 亚洲成av人综合在线观看| 日日摸夜夜添夜夜添精品视频 | 成人h动漫精品一区二| 国产精品成人一区二区艾草 | 美腿丝袜一区二区三区| 久久久亚洲高清| 色综合一区二区三区| 亚洲国产视频网站| 欧美精品一区二区三区久久久| 国产成人小视频| 亚洲高清一区二区三区| 精品国产网站在线观看| 成人91在线观看|