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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? stl_algo.h

?? TSP問題的一個類庫 有源代碼和stl
?? H
?? 第 1 頁 / 共 5 頁
字號:
template <class _InputIter, class _RandomAccessIter, class _Distance,
          class _Tp>
_RandomAccessIter __partial_sort_copy(_InputIter __first,
                                         _InputIter __last,
                                         _RandomAccessIter __result_first,
                                         _RandomAccessIter __result_last, 
                                         _Distance*, _Tp*) {
  if (__result_first == __result_last) return __result_last;
  _RandomAccessIter __result_real_last = __result_first;
  while(__first != __last && __result_real_last != __result_last) {
    *__result_real_last = *__first;
    ++__result_real_last;
    ++__first;
  }
  make_heap(__result_first, __result_real_last);
  while (__first != __last) {
    if (*__first < *__result_first) 
      __adjust_heap(__result_first, _Distance(0),
                    _Distance(__result_real_last - __result_first),
                    _Tp(*__first));
    ++__first;
  }
  sort_heap(__result_first, __result_real_last);
  return __result_real_last;
}

template <class _InputIter, class _RandomAccessIter>
inline _RandomAccessIter
partial_sort_copy(_InputIter __first, _InputIter __last,
                  _RandomAccessIter __result_first,
                  _RandomAccessIter __result_last) {
  return __partial_sort_copy(__first, __last, __result_first, __result_last, 
                             __DISTANCE_TYPE(__result_first),
                             __VALUE_TYPE(__first));
}

template <class _InputIter, class _RandomAccessIter, class _Compare,
          class _Distance, class _Tp>
_RandomAccessIter __partial_sort_copy(_InputIter __first,
                                         _InputIter __last,
                                         _RandomAccessIter __result_first,
                                         _RandomAccessIter __result_last,
                                         _Compare __comp, _Distance*, _Tp*) {
  if (__result_first == __result_last) return __result_last;
  _RandomAccessIter __result_real_last = __result_first;
  while(__first != __last && __result_real_last != __result_last) {
    *__result_real_last = *__first;
    ++__result_real_last;
    ++__first;
  }
  make_heap(__result_first, __result_real_last, __comp);
  while (__first != __last) {
    if (__comp(*__first, *__result_first))
      __adjust_heap(__result_first, _Distance(0),
                    _Distance(__result_real_last - __result_first),
                    _Tp(*__first),
                    __comp);
    ++__first;
  }
  sort_heap(__result_first, __result_real_last, __comp);
  return __result_real_last;
}

template <class _InputIter, class _RandomAccessIter, class _Compare>
inline _RandomAccessIter
partial_sort_copy(_InputIter __first, _InputIter __last,
                  _RandomAccessIter __result_first,
                  _RandomAccessIter __result_last, _Compare __comp) {
  return __partial_sort_copy(__first, __last, __result_first, __result_last,
                             __comp,
                             __DISTANCE_TYPE(__result_first),
                             __VALUE_TYPE(__first));
}

// nth_element() and its auxiliary functions.  

template <class _RandomAccessIter, class _Tp>
void __nth_element(_RandomAccessIter __first, _RandomAccessIter __nth,
                   _RandomAccessIter __last, _Tp*) {
  while (__last - __first > 3) {
    _RandomAccessIter __cut =
      __unguarded_partition(__first, __last,
                            _Tp(__median(*__first,
                                         *(__first + (__last - __first)/2),
                                         *(__last - 1))));
    if (__cut <= __nth)
      __first = __cut;
    else 
      __last = __cut;
  }
  __insertion_sort(__first, __last);
}

template <class _RandomAccessIter>
inline void nth_element(_RandomAccessIter __first, _RandomAccessIter __nth,
                        _RandomAccessIter __last) {
  __nth_element(__first, __nth, __last, __VALUE_TYPE(__first));
}

template <class _RandomAccessIter, class _Tp, class _Compare>
void __nth_element(_RandomAccessIter __first, _RandomAccessIter __nth,
                   _RandomAccessIter __last, _Tp*, _Compare __comp) {
  while (__last - __first > 3) {
    _RandomAccessIter __cut =
      __unguarded_partition(__first, __last,
                            _Tp(__median(*__first,
                                         *(__first + (__last - __first)/2), 
                                         *(__last - 1),
                                         __comp)),
                            __comp);
    if (__cut <= __nth)
      __first = __cut;
    else 
      __last = __cut;
  }
  __insertion_sort(__first, __last, __comp);
}

template <class _RandomAccessIter, class _Compare>
inline void nth_element(_RandomAccessIter __first, _RandomAccessIter __nth,
                 _RandomAccessIter __last, _Compare __comp) {
  __nth_element(__first, __nth, __last, __VALUE_TYPE(__first), __comp);
}


// Binary search (lower_bound, upper_bound, equal_range, binary_search).

template <class _ForwardIter, class _Tp, class _Distance>
_ForwardIter __lower_bound(_ForwardIter __first, _ForwardIter __last,
                           const _Tp& __val, _Distance*) 
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (*__middle < __val) {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
    else
      __len = __half;
  }
  return __first;
}

template <class _ForwardIter, class _Tp>
inline _ForwardIter lower_bound(_ForwardIter __first, _ForwardIter __last,
                                   const _Tp& __val) {
  return __lower_bound(__first, __last, __val,
                       __DISTANCE_TYPE(__first));
}

template <class _ForwardIter, class _Tp, class _Compare, class _Distance>
_ForwardIter __lower_bound(_ForwardIter __first, _ForwardIter __last,
                              const _Tp& __val, _Compare __comp, _Distance*)
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (__comp(*__middle, __val)) {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
    else
      __len = __half;
  }
  return __first;
}

template <class _ForwardIter, class _Tp, class _Compare>
inline _ForwardIter lower_bound(_ForwardIter __first, _ForwardIter __last,
                                const _Tp& __val, _Compare __comp) {
  return __lower_bound(__first, __last, __val, __comp,
                       __DISTANCE_TYPE(__first));
}

template <class _ForwardIter, class _Tp, class _Distance>
_ForwardIter __upper_bound(_ForwardIter __first, _ForwardIter __last,
                           const _Tp& __val, _Distance*)
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (__val < *__middle)
      __len = __half;
    else {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
  }
  return __first;
}

template <class _ForwardIter, class _Tp>
inline _ForwardIter upper_bound(_ForwardIter __first, _ForwardIter __last,
                                const _Tp& __val) {
  return __upper_bound(__first, __last, __val,
                       __DISTANCE_TYPE(__first));
}

template <class _ForwardIter, class _Tp, class _Compare, class _Distance>
_ForwardIter __upper_bound(_ForwardIter __first, _ForwardIter __last,
                           const _Tp& __val, _Compare __comp, _Distance*)
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (__comp(__val, *__middle))
      __len = __half;
    else {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
  }
  return __first;
}

template <class _ForwardIter, class _Tp, class _Compare>
inline _ForwardIter upper_bound(_ForwardIter __first, _ForwardIter __last,
                                const _Tp& __val, _Compare __comp) {
  return __upper_bound(__first, __last, __val, __comp,
                       __DISTANCE_TYPE(__first));
}

template <class _ForwardIter, class _Tp, class _Distance>
pair<_ForwardIter, _ForwardIter>
__equal_range(_ForwardIter __first, _ForwardIter __last, const _Tp& __val,
              _Distance*)
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle, __left, __right;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (*__middle < __val) {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
    else if (__val < *__middle)
      __len = __half;
    else {
      __left = lower_bound(__first, __middle, __val);
      advance(__first, __len);
      __right = upper_bound(++__middle, __first, __val);
      return pair<_ForwardIter, _ForwardIter>(__left, __right);
    }
  }
  return pair<_ForwardIter, _ForwardIter>(__first, __first);
}

template <class _ForwardIter, class _Tp>
inline pair<_ForwardIter, _ForwardIter>
equal_range(_ForwardIter __first, _ForwardIter __last, const _Tp& __val) {
  return __equal_range(__first, __last, __val,
                       __DISTANCE_TYPE(__first));
}

template <class _ForwardIter, class _Tp, class _Compare, class _Distance>
pair<_ForwardIter, _ForwardIter>
__equal_range(_ForwardIter __first, _ForwardIter __last, const _Tp& __val,
              _Compare __comp, _Distance*)
{
  _Distance __len = 0;
  distance(__first, __last, __len);
  _Distance __half;
  _ForwardIter __middle, __left, __right;

  while (__len > 0) {
    __half = __len >> 1;
    __middle = __first;
    advance(__middle, __half);
    if (__comp(*__middle, __val)) {
      __first = __middle;
      ++__first;
      __len = __len - __half - 1;
    }
    else if (__comp(__val, *__middle))
      __len = __half;
    else {
      __left = lower_bound(__first, __middle, __val, __comp);
      advance(__first, __len);
      __right = upper_bound(++__middle, __first, __val, __comp);
      return pair<_ForwardIter, _ForwardIter>(__left, __right);
    }
  }
  return pair<_ForwardIter, _ForwardIter>(__first, __first);
}           

template <class _ForwardIter, class _Tp, class _Compare>
inline pair<_ForwardIter, _ForwardIter>
equal_range(_ForwardIter __first, _ForwardIter __last, const _Tp& __val,
            _Compare __comp) {
  return __equal_range(__first, __last, __val, __comp,
                       __DISTANCE_TYPE(__first));
} 

template <class _ForwardIter, class _Tp>
bool binary_search(_ForwardIter __first, _ForwardIter __last,
                   const _Tp& __val) {
  _ForwardIter __i = lower_bound(__first, __last, __val);
  return __i != __last && !(__val < *__i);
}

template <class _ForwardIter, class _Tp, class _Compare>
bool binary_search(_ForwardIter __first, _ForwardIter __last,
                   const _Tp& __val,
                   _Compare __comp) {
  _ForwardIter __i = lower_bound(__first, __last, __val, __comp);
  return __i != __last && !__comp(__val, *__i);
}

// merge, with and without an explicitly supplied comparison function.

template <class _InputIter1, class _InputIter2, class _OutputIter>
_OutputIter merge(_InputIter1 __first1, _InputIter1 __last1,
                  _InputIter2 __first2, _InputIter2 __last2,
                  _OutputIter __result) {
  while (__first1 != __last1 && __first2 != __last2) {
    if (*__first2 < *__first1) {
      *__result = *__first2;
      ++__first2;
    }
    else {
      *__result = *__first1;
      ++__first1;
    }
    ++__result;
  }
  return copy(__first2, __last2, copy(__first1, __last1, __result));
}

template <class _InputIter1, class _InputIter2, class _OutputIter,
          class _Compare>
_OutputIter merge(_InputIter1 __first1, _InputIter1 __last1,
                  _InputIter2 __first2, _InputIter2 __last2,
                  _OutputIter __result, _Compare __comp) {
  while (__first1 != __last1 && __first2 != __last2) {
    if (__comp(*__first2, *__first1)) {
      *__result = *__first2;
      ++__first2;
    }
    else {
      *__result = *__first1;
      ++__first1;
    }
    ++__result;
  }
  return copy(__first2, __last2, copy(__first1, __last1, __result));
}

// inplace_merge and its auxiliary functions. 

template <class _BidirectionalIter, class _Distance>
void __merge_without_buffer(_BidirectionalIter __first,
                            _BidirectionalIter __middle,
                            _BidirectionalIter __last,
                            _Distance __len1, _Distance __len2) {
  if (__len1 == 0 || __len2 == 0)
    return;
  if (__len1 + __len2 == 2) {
    if (*__middle < *__first)
      iter_swap(__first, __middle);
    return;
  }
  _BidirectionalIter __first

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲激情在线激情| 日韩精品一区二区三区视频| 国产一区二区三区在线观看免费| 国产精品情趣视频| 欧美精品tushy高清| 91视频国产观看| 顶级嫩模精品视频在线看| 99精品欧美一区二区三区小说| 久久久精品综合| 91视频观看视频| 国产夜色精品一区二区av| 亚洲图片一区二区| 日韩电影在线一区二区| 韩国理伦片一区二区三区在线播放 | 同产精品九九九| 日韩成人av影视| 五月天激情小说综合| 91精品国产乱| 日本道在线观看一区二区| 国产一区二区三区免费| 波多野结衣一区二区三区| 国产精品99久久久久久有的能看 | 欧美日韩久久久久久| 色婷婷综合久久久| 国产盗摄一区二区三区| 欧美亚一区二区| 欧美一级片在线看| 欧美一区二区三区视频在线观看| 2019国产精品| 亚洲午夜激情网站| 精品一区二区三区欧美| 久久 天天综合| 精品一区二区久久| 成人永久看片免费视频天堂| 成人av电影在线观看| 欧美日韩在线电影| 26uuu精品一区二区| 欧美日韩一区精品| 久久久久久久久免费| 日韩在线a电影| 韩国精品主播一区二区在线观看 | 精品一区二区久久久| 国产精品自拍网站| 91国产视频在线观看| www.久久精品| 99精品视频一区二区三区| 欧美亚洲动漫精品| 免费在线观看一区| 欧美最猛黑人xxxxx猛交| 日韩一区二区三区在线视频| 波多野结衣欧美| 免费在线观看精品| 亚洲自拍偷拍麻豆| 国产清纯白嫩初高生在线观看91| 欧美日韩国产一级片| jlzzjlzz亚洲日本少妇| 久久爱另类一区二区小说| 亚洲一区二区四区蜜桃| 国产精品久久国产精麻豆99网站| 精品成a人在线观看| 欧美一级淫片007| 欧美日韩国产一区二区三区地区| 色综合久久久久久久| 99在线精品免费| 懂色av一区二区三区免费看| 国产剧情一区在线| 国产精品亚洲人在线观看| 久久国产精品99久久久久久老狼 | 激情亚洲综合在线| 午夜久久久影院| 一区二区三区国产豹纹内裤在线| 国产精品国产三级国产aⅴ入口| 久久久久久久久97黄色工厂| 精品久久一二三区| 欧美成人性战久久| 精品国产乱码久久久久久免费 | 99久久99久久精品免费观看| 国产成人精品免费一区二区| 免费人成在线不卡| 日本网站在线观看一区二区三区| 亚洲国产cao| 日韩精品欧美精品| 麻豆精品国产传媒mv男同| 蜜桃精品视频在线观看| 麻豆高清免费国产一区| 久久精品国产精品亚洲红杏| 国产一区二区三区美女| 成人三级伦理片| 91麻豆国产福利在线观看| 91极品美女在线| 欧美日韩视频在线第一区| 欧美人与禽zozo性伦| 日韩欧美国产成人一区二区| 色综合久久中文综合久久97| 91在线视频播放| 精品久久国产字幕高潮| 欧美日韩精品一区二区在线播放| 成人性生交大片免费看中文| 国产99精品国产| 国产精品一品二品| 国产精品一区二区三区网站| 青青草国产成人99久久| 亚洲aaa精品| 污片在线观看一区二区| 日韩一区二区三区在线观看| 亚洲国产综合视频在线观看| 日本欧美韩国一区三区| 国产成人免费在线视频| 91免费看`日韩一区二区| 欧美三级电影网站| 26uuu亚洲婷婷狠狠天堂| 最新日韩av在线| 日韩av中文在线观看| 成人免费毛片片v| 欧美日韩成人在线一区| 日本一二三四高清不卡| 图片区日韩欧美亚洲| 国产a久久麻豆| 欧美绝品在线观看成人午夜影视| 久久久久97国产精华液好用吗| 一区二区三区日韩在线观看| 国产在线不卡视频| 91成人国产精品| 国产色综合久久| 亚洲成人中文在线| www.日韩精品| 欧美大片一区二区三区| 一区二区视频在线看| 国内成人免费视频| 精品视频一区二区三区免费| 国产亚洲精品资源在线26u| 婷婷夜色潮精品综合在线| www.久久精品| 久久久亚洲国产美女国产盗摄| 亚洲成在线观看| 一本久久综合亚洲鲁鲁五月天| 久久中文娱乐网| 三级不卡在线观看| 欧日韩精品视频| 亚洲视频一二区| 成人丝袜18视频在线观看| 日韩久久精品一区| 婷婷成人激情在线网| 91视频精品在这里| 国产精品乱码妇女bbbb| 国产做a爰片久久毛片| 51午夜精品国产| 午夜视频一区二区三区| 在线观看日韩精品| 18成人在线视频| 成人av电影观看| 国产精品久久一级| 成人免费av资源| 欧美韩国日本不卡| 欧美午夜精品久久久久久超碰| 亚洲国产综合91精品麻豆| 国产精品久久夜| 欧美不卡一二三| 色老汉一区二区三区| 欧美视频一区在线| 亚洲欧美韩国综合色| 成人综合在线视频| 久久精品综合网| 久久综合综合久久综合| 欧美精品在线视频| 日韩激情在线观看| 蜜桃久久久久久| 亚洲欧洲av在线| 日韩精品在线一区| 亚洲欧美日韩国产中文在线| 欧美色中文字幕| 国产乱码精品一区二区三区五月婷 | 欧洲人成人精品| 琪琪久久久久日韩精品| 这里只有精品99re| 国产一区视频在线看| 亚洲国产一区视频| 国产精品美女久久久久久2018| 国产999精品久久久久久| 日本一二三四高清不卡| 成年人国产精品| 亚洲美女免费在线| 欧美日韩精品二区第二页| 午夜在线成人av| 日韩欧美国产午夜精品| 国模大尺度一区二区三区| 久久亚洲私人国产精品va媚药| 国内精品不卡在线| 国产精品色在线| 色菇凉天天综合网| 午夜久久电影网| 精品国产乱码久久久久久图片| 国产一区不卡精品| 最新国产の精品合集bt伙计| 欧美亚洲一区二区三区四区| 另类欧美日韩国产在线| 国产精品视频一二三| 色婷婷亚洲精品| 亚洲高清视频中文字幕| 日韩午夜在线观看|