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

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

?? blocksort.c

?? p2p技術(shù)C源代碼.rar
?? C
?? 第 1 頁 / 共 3 頁
字號:
#undef UNALIGNED_BH/*---------------------------------------------*//*--- The main, O(N^2 log(N)) sorting       ---*//*--- algorithm.  Faster for "normal"       ---*//*--- non-repetitive blocks.                ---*//*---------------------------------------------*/
#pragma warning (disable:4244)/*---------------------------------------------*/static__inline__Bool mainGtU ( UInt32  i1,                UInt32  i2,               UChar*  block,                UInt16* quadrant,               UInt32  nblock,               Int32*  budget ){   Int32  k;   UChar  c1, c2;   UInt16 s1, s2;   AssertD ( i1 != i2, "mainGtU" );   /* 1 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 2 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 3 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 4 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 5 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 6 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 7 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 8 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 9 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 10 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 11 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   /* 12 */   c1 = block[i1]; c2 = block[i2];   if (c1 != c2) return (c1 > c2);   i1++; i2++;   k = nblock + 8;   do {      /* 1 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 2 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 3 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 4 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 5 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 6 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 7 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      /* 8 */      c1 = block[i1]; c2 = block[i2];      if (c1 != c2) return (c1 > c2);      s1 = quadrant[i1]; s2 = quadrant[i2];      if (s1 != s2) return (s1 > s2);      i1++; i2++;      if (i1 >= nblock) i1 -= nblock;      if (i2 >= nblock) i2 -= nblock;      k -= 8;      (*budget)--;   }      while (k >= 0);   return False;}/*---------------------------------------------*//*--   Knuth's increments seem to work better   than Incerpi-Sedgewick here.  Possibly   because the number of elems to sort is   usually small, typically <= 20.--*/staticInt32 incs[14] = { 1, 4, 13, 40, 121, 364, 1093, 3280,                   9841, 29524, 88573, 265720,                   797161, 2391484 };staticvoid mainSimpleSort ( UInt32* ptr,                      UChar*  block,                      UInt16* quadrant,                      Int32   nblock,                      Int32   lo,                       Int32   hi,                       Int32   d,                      Int32*  budget ){   Int32 i, j, h, bigN, hp;   UInt32 v;   bigN = hi - lo + 1;   if (bigN < 2) return;   hp = 0;   while (incs[hp] < bigN) hp++;   hp--;   for (; hp >= 0; hp--) {      h = incs[hp];      i = lo + h;      while (True) {         /*-- copy 1 --*/         if (i > hi) break;         v = ptr[i];         j = i;         while ( mainGtU (                     ptr[j-h]+d, v+d, block, quadrant, nblock, budget                  ) ) {            ptr[j] = ptr[j-h];            j = j - h;            if (j <= (lo + h - 1)) break;         }         ptr[j] = v;         i++;         /*-- copy 2 --*/         if (i > hi) break;         v = ptr[i];         j = i;         while ( mainGtU (                     ptr[j-h]+d, v+d, block, quadrant, nblock, budget                  ) ) {            ptr[j] = ptr[j-h];            j = j - h;            if (j <= (lo + h - 1)) break;         }         ptr[j] = v;         i++;         /*-- copy 3 --*/         if (i > hi) break;         v = ptr[i];         j = i;         while ( mainGtU (                     ptr[j-h]+d, v+d, block, quadrant, nblock, budget                  ) ) {            ptr[j] = ptr[j-h];            j = j - h;            if (j <= (lo + h - 1)) break;         }         ptr[j] = v;         i++;         if (*budget < 0) return;      }   }}/*---------------------------------------------*//*--   The following is an implementation of   an elegant 3-way quicksort for strings,   described in a paper "Fast Algorithms for   Sorting and Searching Strings", by Robert   Sedgewick and Jon L. Bentley.--*/#define mswap(zz1, zz2) \   { Int32 zztmp = zz1; zz1 = zz2; zz2 = zztmp; }#define mvswap(zzp1, zzp2, zzn)       \{                                     \   Int32 yyp1 = (zzp1);               \   Int32 yyp2 = (zzp2);               \   Int32 yyn  = (zzn);                \   while (yyn > 0) {                  \      mswap(ptr[yyp1], ptr[yyp2]);    \      yyp1++; yyp2++; yyn--;          \   }                                  \}static __inline__UChar mmed3 ( UChar a, UChar b, UChar c ){   UChar t;   if (a > b) { t = a; a = b; b = t; };   if (b > c) {       b = c;      if (a > b) b = a;   }   return b;}#define mmin(a,b) ((a) < (b)) ? (a) : (b)#define mpush(lz,hz,dz) { stackLo[sp] = lz; \                          stackHi[sp] = hz; \                          stackD [sp] = dz; \                          sp++; }#define mpop(lz,hz,dz) { sp--;             \                         lz = stackLo[sp]; \                         hz = stackHi[sp]; \                         dz = stackD [sp]; }#define mnextsize(az) (nextHi[az]-nextLo[az])#define mnextswap(az,bz)                                        \   { Int32 tz;                                                  \     tz = nextLo[az]; nextLo[az] = nextLo[bz]; nextLo[bz] = tz; \     tz = nextHi[az]; nextHi[az] = nextHi[bz]; nextHi[bz] = tz; \     tz = nextD [az]; nextD [az] = nextD [bz]; nextD [bz] = tz; }#define MAIN_QSORT_SMALL_THRESH 20#define MAIN_QSORT_DEPTH_THRESH (BZ_N_RADIX + BZ_N_QSORT)#define MAIN_QSORT_STACK_SIZE 100staticvoid mainQSort3 ( UInt32* ptr,                  UChar*  block,                  UInt16* quadrant,                  Int32   nblock,                  Int32   loSt,                   Int32   hiSt,                   Int32   dSt,                  Int32*  budget ){   Int32 unLo, unHi, ltLo, gtHi, n, m, med;   Int32 sp, lo, hi, d;   Int32 stackLo[MAIN_QSORT_STACK_SIZE];   Int32 stackHi[MAIN_QSORT_STACK_SIZE];   Int32 stackD [MAIN_QSORT_STACK_SIZE];   Int32 nextLo[3];   Int32 nextHi[3];   Int32 nextD [3];   sp = 0;   mpush ( loSt, hiSt, dSt );   while (sp > 0) {      AssertH ( sp < MAIN_QSORT_STACK_SIZE, 1001 );      mpop ( lo, hi, d );      if (hi - lo < MAIN_QSORT_SMALL_THRESH ||           d > MAIN_QSORT_DEPTH_THRESH) {         mainSimpleSort ( ptr, block, quadrant, nblock, lo, hi, d, budget );         if (*budget < 0) return;         continue;      }      med = (Int32)             mmed3 ( block[ptr[ lo         ]+d],                    block[ptr[ hi         ]+d],                    block[ptr[ (lo+hi)>>1 ]+d] );      unLo = ltLo = lo;      unHi = gtHi = hi;      while (True) {         while (True) {            if (unLo > unHi) break;            n = ((Int32)block[ptr[unLo]+d]) - med;            if (n == 0) {                mswap(ptr[unLo], ptr[ltLo]);                ltLo++; unLo++; continue;             };            if (n >  0) break;            unLo++;         }         while (True) {            if (unLo > unHi) break;            n = ((Int32)block[ptr[unHi]+d]) - med;            if (n == 0) {                mswap(ptr[unHi], ptr[gtHi]);                gtHi--; unHi--; continue;             };            if (n <  0) break;            unHi--;         }         if (unLo > unHi) break;         mswap(ptr[unLo], ptr[unHi]); unLo++; unHi--;      }      AssertD ( unHi == unLo-1, "mainQSort3(2)" );      if (gtHi < ltLo) {         mpush(lo, hi, d+1 );         continue;      }      n = mmin(ltLo-lo, unLo-ltLo); mvswap(lo, unLo-n, n);      m = mmin(hi-gtHi, gtHi-unHi); mvswap(unLo, hi-m+1, m);      n = lo + unLo - ltLo - 1;      m = hi - (gtHi - unHi) + 1;      nextLo[0] = lo;  nextHi[0] = n;   nextD[0] = d;      nextLo[1] = m;   nextHi[1] = hi;  nextD[1] = d;      nextLo[2] = n+1; nextHi[2] = m-1; nextD[2] = d+1;      if (mnextsize(0) < mnextsize(1)) mnextswap(0,1);      if (mnextsize(1) < mnextsize(2)) mnextswap(1,2);      if (mnextsize(0) < mnextsize(1)) mnextswap(0,1);      AssertD (mnextsize(0) >= mnextsize(1), "mainQSort3(8)" );      AssertD (mnextsize(1) >= mnextsize(2), "mainQSort3(9)" );      mpush (nextLo[0], nextHi[0], nextD[0]);      mpush (nextLo[1], nextHi[1], nextD[1]);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品无人区卡一卡二卡三乱码免费卡| 这里只有精品视频在线观看| 精品国产不卡一区二区三区| 久久精品国产精品亚洲红杏| 欧美一区永久视频免费观看| 琪琪一区二区三区| 欧美变态凌虐bdsm| 国产乱码精品一区二区三区五月婷| 日韩一级片网站| 久草这里只有精品视频| 2023国产一二三区日本精品2022| 激情偷乱视频一区二区三区| 久久精品一区蜜桃臀影院| 国产91对白在线观看九色| 国产精品免费久久| 日本高清不卡一区| 男女视频一区二区| 国产欧美精品区一区二区三区| 成人av第一页| 性久久久久久久久久久久| 日韩一区二区三区四区五区六区 | 国产一区二区不卡老阿姨| 国产色一区二区| 色综合久久久久综合体桃花网| 亚洲电影一区二区| 亚洲精品在线观| 91视频免费看| 麻豆精品国产91久久久久久| 日本一区二区高清| 欧美性色黄大片手机版| 麻豆精品视频在线观看视频| 欧美国产国产综合| 欧美日韩在线播放一区| 国产精一区二区三区| 一个色妞综合视频在线观看| 精品国产一区二区三区久久影院| 成人免费黄色在线| 免费高清成人在线| 亚洲色图在线视频| 精品国产一区二区三区久久久蜜月| eeuss国产一区二区三区| 奇米色一区二区| 亚洲精品ww久久久久久p站| 日韩欧美国产成人一区二区| 94色蜜桃网一区二区三区| 免费一级欧美片在线观看| 亚洲欧美综合色| 精品免费日韩av| 欧美在线短视频| 波多野结衣中文字幕一区二区三区| 日精品一区二区三区| 中文字幕制服丝袜成人av | 欧美日韩dvd在线观看| 国产91在线观看| 蜜臀va亚洲va欧美va天堂| 亚洲品质自拍视频| 日本一区二区免费在线| 日韩视频免费观看高清完整版 | 日本vs亚洲vs韩国一区三区二区| 中文字幕五月欧美| 国产亚洲精品7777| 日韩一区二区三区在线视频| 在线观看日韩高清av| 国产成人免费网站| 久久99久国产精品黄毛片色诱| 亚洲一区二区不卡免费| 国产精品久久一级| 久久精品在这里| 精品sm捆绑视频| 日韩一区二区视频| 欧美一级欧美三级在线观看| 欧美网站大全在线观看| 91香蕉视频mp4| 99riav一区二区三区| 国产a久久麻豆| 国产成人精品亚洲日本在线桃色 | 亚洲免费av在线| 亚洲欧美自拍偷拍色图| 中文字幕免费一区| 国产欧美日韩麻豆91| 久久久精品免费免费| 久久嫩草精品久久久精品一| 久久影视一区二区| 2020国产精品| 欧美激情中文不卡| 国产精品美女久久久久aⅴ| 中文字幕一区二区三区不卡在线| 中文字幕一区日韩精品欧美| 亚洲视频每日更新| 亚洲区小说区图片区qvod| 一区二区三区在线视频免费观看| 亚洲老司机在线| 天天色 色综合| 久久99精品久久久久久久久久久久| 精品一区中文字幕| 国产99精品视频| 色婷婷亚洲一区二区三区| 欧美亚洲免费在线一区| 欧美一卡二卡三卡| 国产午夜亚洲精品羞羞网站| 国产精品萝li| 亚洲丶国产丶欧美一区二区三区| 日韩二区三区四区| 国产精品456露脸| 色狠狠桃花综合| 欧美大片免费久久精品三p| 国产欧美一区二区在线| 亚洲精品久久久蜜桃| 日本免费新一区视频| 国产成人综合亚洲91猫咪| 色婷婷香蕉在线一区二区| 91精品国产高清一区二区三区蜜臀 | 韩国av一区二区三区在线观看| 国产福利一区二区三区视频| 一本久久精品一区二区| 91精品国产欧美一区二区18| 欧美国产一区视频在线观看| 一区二区日韩av| 国产一区二区三区四| 在线亚洲一区观看| 久久亚洲综合色一区二区三区| 亚洲图片欧美激情| 久久精品国产亚洲一区二区三区| 成人午夜又粗又硬又大| 欧美欧美午夜aⅴ在线观看| 国产亚洲精品7777| 日韩国产一二三区| 成年人国产精品| 日韩视频在线永久播放| 亚洲欧美日韩一区| 国内精品久久久久影院一蜜桃| 99国产欧美另类久久久精品| 欧美一卡二卡在线| 一区二区欧美视频| 成人免费视频一区| 欧美videos大乳护士334| 亚洲一区二区五区| 成人高清免费观看| 亚洲精品一区二区三区四区高清| 亚洲在线视频免费观看| 国产91清纯白嫩初高中在线观看| 欧美人体做爰大胆视频| 亚洲视频1区2区| 国产成人福利片| 日韩精品中文字幕一区二区三区| 伊人色综合久久天天| 从欧美一区二区三区| 精品国产一区二区三区不卡| 首页欧美精品中文字幕| 色伊人久久综合中文字幕| 国产欧美一区视频| 黑人巨大精品欧美一区| 欧美一区二区三区免费视频| 亚洲图片有声小说| 99re热视频这里只精品| 中文字幕第一区| 国产很黄免费观看久久| 久久亚洲精精品中文字幕早川悠里| 日韩在线观看一区二区| 欧美色综合网站| 亚洲伦在线观看| 91免费观看视频在线| 中文字幕五月欧美| 菠萝蜜视频在线观看一区| 久久久久久久久伊人| 国产一区二区三区四| 久久欧美一区二区| 国产精品18久久久久久久久| 久久蜜臀精品av| 国产成人免费在线观看不卡| 国产亚洲欧美日韩在线一区| 国产一区二区剧情av在线| 久久久久久久久久久久久女国产乱 | 9久草视频在线视频精品| 国产精品你懂的在线| 99re热视频这里只精品| 一区二区在线看| 欧美日韩国产系列| 奇米精品一区二区三区四区| 欧美一级欧美三级在线观看| 久久精品国产久精国产爱| 26uuu色噜噜精品一区| 国产福利电影一区二区三区| 中文字幕国产一区二区| 一本久道久久综合中文字幕| 一区二区三区加勒比av| 欧美精选在线播放| 久久激情五月婷婷| 国产亚洲欧美激情| 色综合夜色一区| 五月婷婷激情综合| 精品国产第一区二区三区观看体验| 国产一区福利在线| 日韩一区有码在线| 欧美人动与zoxxxx乱| 国产做a爰片久久毛片| 国产精品不卡一区二区三区| 欧美日韩一区小说| 国产一区在线观看视频| 综合电影一区二区三区|