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

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

?? huffman.c

?? p2p技術(shù)C源代碼.rar
?? C
字號:
/*-------------------------------------------------------------*//*--- Huffman coding low-level stuff                        ---*//*---                                             huffman.c ---*//*-------------------------------------------------------------*//*--  This file is a part of bzip2 and/or libbzip2, a program and  library for lossless, block-sorting data compression.  Copyright (C) 1996-2002 Julian R Seward.  All rights reserved.  Redistribution and use in source and binary forms, with or without  modification, are permitted provided that the following conditions  are met:  1. Redistributions of source code must retain the above copyright     notice, this list of conditions and the following disclaimer.  2. The origin of this software must not be misrepresented; you must      not claim that you wrote the original software.  If you use this      software in a product, an acknowledgment in the product      documentation would be appreciated but is not required.  3. Altered source versions must be plainly marked as such, and must     not be misrepresented as being the original software.  4. The name of the author may not be used to endorse or promote      products derived from this software without specific prior written      permission.  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  Julian Seward, Cambridge, UK.  jseward@acm.org  bzip2/libbzip2 version 1.0 of 21 March 2000  This program is based on (at least) the work of:     Mike Burrows     David Wheeler     Peter Fenwick     Alistair Moffat     Radford Neal     Ian H. Witten     Robert Sedgewick     Jon L. Bentley  For more information on these sources, see the manual.--*/#include "bzlib_private.h"/*---------------------------------------------------*/#define WEIGHTOF(zz0)  ((zz0) & 0xffffff00)#define DEPTHOF(zz1)   ((zz1) & 0x000000ff)#define MYMAX(zz2,zz3) ((zz2) > (zz3) ? (zz2) : (zz3))#define ADDWEIGHTS(zw1,zw2)                           \   (WEIGHTOF(zw1)+WEIGHTOF(zw2)) |                    \   (1 + MYMAX(DEPTHOF(zw1),DEPTHOF(zw2)))#define UPHEAP(z)                                     \{                                                     \   Int32 zz, tmp;                                     \   zz = z; tmp = heap[zz];                            \   while (weight[tmp] < weight[heap[zz >> 1]]) {      \      heap[zz] = heap[zz >> 1];                       \      zz >>= 1;                                       \   }                                                  \   heap[zz] = tmp;                                    \}#define DOWNHEAP(z)                                   \{                                                     \   Int32 zz, yy, tmp;                                 \   zz = z; tmp = heap[zz];                            \   while (True) {                                     \      yy = zz << 1;                                   \      if (yy > nHeap) break;                          \      if (yy < nHeap &&                               \          weight[heap[yy+1]] < weight[heap[yy]])      \         yy++;                                        \      if (weight[tmp] < weight[heap[yy]]) break;      \      heap[zz] = heap[yy];                            \      zz = yy;                                        \   }                                                  \   heap[zz] = tmp;                                    \}/*---------------------------------------------------*/void BZ2_hbMakeCodeLengths ( UChar *len,                              Int32 *freq,                             Int32 alphaSize,                             Int32 maxLen ){   /*--      Nodes and heap entries run from 1.  Entry 0      for both the heap and nodes is a sentinel.   --*/   Int32 nNodes, nHeap, n1, n2, i, j, k;   Bool  tooLong;   Int32 heap   [ BZ_MAX_ALPHA_SIZE + 2 ];   Int32 weight [ BZ_MAX_ALPHA_SIZE * 2 ];   Int32 parent [ BZ_MAX_ALPHA_SIZE * 2 ];    for (i = 0; i < alphaSize; i++)      weight[i+1] = (freq[i] == 0 ? 1 : freq[i]) << 8;   while (True) {      nNodes = alphaSize;      nHeap = 0;      heap[0] = 0;      weight[0] = 0;      parent[0] = -2;      for (i = 1; i <= alphaSize; i++) {         parent[i] = -1;         nHeap++;         heap[nHeap] = i;         UPHEAP(nHeap);      }      AssertH( nHeap < (BZ_MAX_ALPHA_SIZE+2), 2001 );         while (nHeap > 1) {         n1 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1);         n2 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1);         nNodes++;         parent[n1] = parent[n2] = nNodes;         weight[nNodes] = ADDWEIGHTS(weight[n1], weight[n2]);         parent[nNodes] = -1;         nHeap++;         heap[nHeap] = nNodes;         UPHEAP(nHeap);      }      AssertH( nNodes < (BZ_MAX_ALPHA_SIZE * 2), 2002 );      tooLong = False;      for (i = 1; i <= alphaSize; i++) {         j = 0;         k = i;         while (parent[k] >= 0) { k = parent[k]; j++; }         len[i-1] = j;         if (j > maxLen) tooLong = True;      }            if (! tooLong) break;      for (i = 1; i < alphaSize; i++) {         j = weight[i] >> 8;         j = 1 + (j / 2);         weight[i] = j << 8;      }   }}/*---------------------------------------------------*/void BZ2_hbAssignCodes ( Int32 *code,                         UChar *length,                         Int32 minLen,                         Int32 maxLen,                         Int32 alphaSize ){   Int32 n, vec, i;   vec = 0;   for (n = minLen; n <= maxLen; n++) {      for (i = 0; i < alphaSize; i++)         if (length[i] == n) { code[i] = vec; vec++; };      vec <<= 1;   }}/*---------------------------------------------------*/void BZ2_hbCreateDecodeTables ( Int32 *limit,                                Int32 *base,                                Int32 *perm,                                UChar *length,                                Int32 minLen,                                Int32 maxLen,                                Int32 alphaSize ){   Int32 pp, i, j, vec;   pp = 0;   for (i = minLen; i <= maxLen; i++)      for (j = 0; j < alphaSize; j++)         if (length[j] == i) { perm[pp] = j; pp++; };   for (i = 0; i < BZ_MAX_CODE_LEN; i++) base[i] = 0;   for (i = 0; i < alphaSize; i++) base[length[i]+1]++;   for (i = 1; i < BZ_MAX_CODE_LEN; i++) base[i] += base[i-1];   for (i = 0; i < BZ_MAX_CODE_LEN; i++) limit[i] = 0;   vec = 0;   for (i = minLen; i <= maxLen; i++) {      vec += (base[i+1] - base[i]);      limit[i] = vec-1;      vec <<= 1;   }   for (i = minLen + 1; i <= maxLen; i++)      base[i] = ((limit[i-1] + 1) << 1) - base[i];}/*-------------------------------------------------------------*//*--- end                                         huffman.c ---*//*-------------------------------------------------------------*/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线播放中文字幕一区| 国产精品不卡在线| 国产精品久久久久三级| 日本美女一区二区| 91高清视频免费看| 亚洲国产精品精华液ab| 麻豆国产精品官网| 欧美在线三级电影| 国产精品久久久久四虎| 国产在线视频精品一区| 日韩av电影免费观看高清完整版| 精品国内二区三区| 亚洲夂夂婷婷色拍ww47| 成人短视频下载| 久久婷婷国产综合精品青草| 午夜成人免费电影| 91福利视频久久久久| 国产日韩v精品一区二区| 久久精品国产99国产| 91精品国产综合久久精品麻豆| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产一区二区毛片| 欧美精品一区二| 国产美女精品在线| 精品国产污网站| 黑人精品欧美一区二区蜜桃| 欧美一区二区三区爱爱| 免费人成在线不卡| 日韩一级精品视频在线观看| 日韩综合小视频| 在线播放日韩导航| 丝袜亚洲另类欧美| 99久久免费视频.com| 99视频在线精品| 亚洲色图在线看| 91久久香蕉国产日韩欧美9色| 国产精品国产三级国产普通话三级| 成人视屏免费看| 专区另类欧美日韩| 在线观看免费亚洲| 偷拍一区二区三区四区| 777久久久精品| 精品一区二区三区免费视频| 欧美精品一区二区在线播放| 国产成人午夜99999| 国产精品国产三级国产aⅴ无密码| 不卡的电视剧免费网站有什么| 亚洲免费毛片网站| 欧美电影一区二区| 久久99国内精品| 中文字幕永久在线不卡| 91国产福利在线| 久久精品国产第一区二区三区| 精品久久久久香蕉网| 成人国产精品免费观看动漫 | 极品少妇一区二区| 久久久精品影视| 一本色道久久综合亚洲aⅴ蜜桃 | 激情文学综合插| 欧美国产一区视频在线观看| 色综合婷婷久久| 日本系列欧美系列| 国产精品免费久久| 欧美日韩精品一区二区天天拍小说| 蜜臀91精品一区二区三区| 国产日韩三级在线| 欧美视频一区二区三区| 精品中文字幕一区二区小辣椒| 国产婷婷色一区二区三区四区| 欧美性淫爽ww久久久久无| 精品在线观看视频| 亚洲午夜av在线| 国产日韩欧美综合一区| 欧美日本视频在线| 成人激情文学综合网| 偷偷要91色婷婷| 亚洲日本一区二区三区| 欧美tk丨vk视频| 91久久精品一区二区三区| 国产在线精品一区二区夜色| 亚洲国产欧美在线人成| 欧美韩日一区二区三区| 欧美va亚洲va在线观看蝴蝶网| 91一区二区在线观看| 国产一区二区导航在线播放| 午夜精品影院在线观看| 国产精品久久福利| 久久久久国产成人精品亚洲午夜 | 久久日韩粉嫩一区二区三区| 欧美色图在线观看| 不卡一区二区中文字幕| 久久97超碰色| 日韩av中文字幕一区二区| 亚洲欧美日本韩国| 中文字幕在线不卡一区二区三区 | 国产在线视频一区二区三区| 视频一区国产视频| 亚洲五码中文字幕| 亚洲卡通欧美制服中文| 国产精品美女视频| 欧美国产日韩亚洲一区| 久久久午夜精品| 久久一区二区视频| 精品乱码亚洲一区二区不卡| 69久久夜色精品国产69蝌蚪网 | 成人av免费在线| 国模冰冰炮一区二区| 久久99久久99精品免视看婷婷| 天天亚洲美女在线视频| 亚洲va天堂va国产va久| 午夜精品久久久久久不卡8050| 一区二区三区在线免费| 一区二区三区日韩精品| 亚洲成人动漫在线免费观看| 亚洲一级二级在线| 午夜电影网亚洲视频| 日韩二区三区四区| 麻豆国产欧美日韩综合精品二区| 日韩成人免费电影| 男男视频亚洲欧美| 国产一区二区三区精品视频 | 美女在线观看视频一区二区| 免费观看在线综合色| 国产在线精品免费| 成人免费福利片| 在线免费观看成人短视频| 欧美视频日韩视频| 欧美一区日本一区韩国一区| 亚洲精品在线观看网站| 中文字幕不卡在线观看| 一区二区三区欧美亚洲| 奇米精品一区二区三区在线观看一| 日韩高清不卡一区二区| 国产精品一区二区在线播放 | 中文字幕在线不卡一区| 亚洲一区二区四区蜜桃| 天天影视网天天综合色在线播放| 蜜桃视频一区二区| 国产精品一区二区在线观看网站| av一本久道久久综合久久鬼色| 91久久久免费一区二区| 日韩亚洲电影在线| 国产精品美女久久久久久久久久久| 亚洲免费观看在线观看| 日韩av成人高清| 99久久精品一区二区| 5566中文字幕一区二区电影| 久久精品亚洲精品国产欧美kt∨| 国产精品初高中害羞小美女文| 丝袜亚洲另类丝袜在线| 国产.欧美.日韩| 91精品国产一区二区三区| 国产精品久久一级| 视频一区在线视频| 成人av免费在线观看| 日韩一级成人av| 亚洲人快播电影网| 韩国成人精品a∨在线观看| 99久久精品免费看国产免费软件| 欧美一区二区视频观看视频| 中文字幕佐山爱一区二区免费| 久久机这里只有精品| 91在线视频免费91| 久久久久久麻豆| 午夜精彩视频在线观看不卡| 成人av电影观看| 欧美mv和日韩mv国产网站| 亚洲一区二区3| 99精品1区2区| 久久久精品黄色| 蜜桃av一区二区| 欧美日韩国产123区| 国产精品每日更新| 国产精品影视网| 337p亚洲精品色噜噜狠狠| 亚洲男人电影天堂| 成人性生交大合| 久久综合久久综合久久| 日韩国产精品久久久| 欧美日韩一区不卡| 亚洲一区二区三区四区中文字幕| 国产成人午夜视频| 久久久www成人免费无遮挡大片| 日韩av电影免费观看高清完整版 | 26uuu成人网一区二区三区| 午夜电影一区二区| 欧美伦理影视网| 午夜国产精品影院在线观看| 在线免费一区三区| 亚洲精品一二三四区| 色婷婷激情综合| 亚洲视频一区在线| 色哟哟精品一区| 亚洲黄一区二区三区| 色乱码一区二区三区88| 亚洲欧美aⅴ...| 在线看日韩精品电影| 亚洲午夜久久久久久久久久久| 一本一道波多野结衣一区二区| 亚洲另类一区二区|