分类目录归档:C/C++数据结构

这是一门高深的知识,本版依然只接受具有技术性的文章。

Gzip Zlib PNG 压缩算法,源码详解
HOT

  gzip,zlib,以及图形格式png,使用的是同一个压缩算法deflate。我们通过对gzip源码的分析来对deflate压缩算法做一个详细的说明。我阅读的gzip版本为 gzip-1.2.4。我们对算法做三种程度的说明。第一种程度,对gzip所使用压缩算法基本原理的说明。第二种程度,对gzip压缩算法实现方法的说明。第三种程度,对gzip实现源码级的说明。      如果你有时间...
阅读全文

各种排序算法
HOT

排序算法是一种基本并且常用的算法。由于实际工作中处理的数量巨大,所以排序算法 对算法本身的速度要求很高。   而一般我们所谓的算法的性能主要是指算法的复杂度,一般用O方法来表示。在后面我将 给出详细的说明。   对于排序的算法我想先做一点简单的介绍,也是给这篇文章理一个提纲。   我将按照算法的复杂度,从简单到难来分析算法。  ...
阅读全文

使用Blowfish算法给文件加密
HOT

这个程序我试了一下,效果很好,但要记住是给文本或二进制文件加密的,如果给别的格式的文件加密,将无法解密到原来的文件。 翻译作者说明如下: 介绍 我在网上想找一个简单而且安全的文件加密的源代码,但是没有找到,所以自己写了一个。 File Encryption utility是一个简单的给文本或二进制文件加密的工具,使用blowfish压缩算法。 这个工具可以创建一个self extracted加密文...
阅读全文

MD5算法研究
HOT

MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变...
阅读全文

MD5算法说明
HOT

MD5算法先对输入的数据进行补位,使得数据位长度LEN对512求余的结果是448。即数据扩展至K*512+448位。即K*64+56个字节,K为整数。 具体补位操作:补一个1,然后补0至满足上述要求。 2.补数据长度: 用一个64位的数字表示数据的原始长度B,把B用两个32位数表示。这时,数 据就被填补成长度为512位的倍数。 3.初始化MD5参数: 四个32位整数 (A,B,C,D) 用来计算信...
阅读全文

ElGamal算法
HOT

一.本文实用于初学者,目的在于帮助大家熟悉一些系统底层的知识。 二.本文只是为了让广大网友共同提高一些基础知识,本人决无卖弄之意,只供需要这方面知识的读者阅读,如果你是高手,或者不需要这方面知识,请跳过。 三.本文是一篇翻译文章,如有雷同,敬请谅解。 四.本文欢迎传抄转载,但是不要用于任何商业用途。请尊重作者劳动,也欢迎来信交流 fnlq@263.net ====================...
阅读全文

DES算法详述
HOT

DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,整个算法的主流程图如下: 其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位,其置换规则见下表: 58,50,12,34,26,18,10,2,60,52,44,36,28,20,12,4,    62,54,46,38,30,22,14,6,64,56,48,40,32,24,1...
阅读全文

c语言中使用环境变量的技巧
HOT

程序readenv.c显示了在c语言中存取环境变量的若干技巧。该程序将以与dos的SET命令相同的格式打印出当前所有的环境变量,然后寻找PATH变量,打印出整个路径字符串。该程序中有两个重要的子程序,find_env_string(),它的主要作用是:根据从调用这传来的要求,或者从环境空间的起点开始,或者从上一次搜索後停留的地方开始,寻找随后的第一个环境字符串,具体程序清单如下。/********...
阅读全文

[转]浅谈内存泄漏,希望对大家有用!
HOT

版权申明本文可以被自由转载,但是必须遵循如下版权约定:1、保留本约定,并保留在文章的开头部分。2、不能任意修改文章内容,或者删节,增加。如果认为本文内容有不当之处需要修改,请与作者联系。3、不能摘抄本文的内容,必须全文发表或者引用。4、必须保留作者署名、注明文章出处。(本文授权给www.linuxaid.com.cn)5、如不遵守本规定,则无权转载本文。作者ariesram电子邮件地址ariesr...
阅读全文

一般线性链表类的C++实现
HOT

以下的C++类LinkList实现了线性链表的一般操作。可以直接在其他的程序中直接建立它的对象,其中线性表中的数据在此为整型,具体应用的时候可以适当的修改,并可以在此基础上继续封装特定的功能。头文件:LinkList.htypedef struct LNode {int data;struct LNode *next;}LNode, *pLinkList;class LinkList {priva...
阅读全文

C++的编写约瑟夫(josephus)环函数
HOT

约瑟夫(josephus)环是这样的:假设有n个小孩坐成一个环,假如从第一个小孩开始数,如果数到m个小孩,则该小该离开,问最后留下的小孩是第几个小孩?例如:总共有6个小孩,围成一圈,从第一个小孩开始,每次数2个小孩,则游戏情况如下:    小孩序号:1,2,3,4,5,6    离开小孩序号:2,4,6,3,1最后获胜...
阅读全文
7 页 / 共 9