2013年11月29日

各种排序算法思想小结

摘要: 1.选择排序 基本思想: 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。2.直接插入排序 基本思想: 每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。3.冒泡排序 基本思想: 依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小 数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为 可能 阅读全文

posted @ 2013-11-29 15:59 gllxy 阅读(257) 评论(0) 推荐(0) 编辑

2013年11月1日

STL学习】自己动手C++编程实现hash table(散列表)

摘要: GI STL中散列表采用链接法解决冲突。结构中维护了一个vector,vector中每一个元素称为一个桶(bucket),它包含的是一个链表的第一个节点。下面代码展示了自己编程实现的hash table,C++模板类封装。如有错误,还请包涵和指正(E-Mail:xiajunhust@gmail.com)!HashTable.h:[cpp]view plaincopyprint?//《STL源码剖析》5.7hashtable编程实现//Author:江南烟雨//E-Mail:xiajunhust@gmail.com#include#include#include//hashtable中链表节点数 阅读全文

posted @ 2013-11-01 15:58 gllxy 阅读(507) 评论(0) 推荐(0) 编辑

HashMap和Hashtable的区别

摘要: 1 HashMap不是线程安全的 hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而hashtable不允许。2 HashTable是线程安全的一个Collection。HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。HashMap允许将null作为一个entry的key或者value,而Hashtable 阅读全文

posted @ 2013-11-01 15:47 gllxy 阅读(225) 评论(0) 推荐(0) 编辑

2013年10月31日

ByteArrayOutputStream用法

摘要: 字节数组流:ByteArrayOutputStream: 可以捕获内存缓冲区的数据,转换成字节数组。ByteArrayoutputStream bout=new ByteArrayOutputStream();bout.write(int a);bout.write(int b);bout.write(int c);byte[] buf=bout.toByteArray();//获取内存缓冲中的数据for(int i=0;i<=buf.length;i++){System.out.println(buf);}bout.close();注:通过调用reset()方法可以重新定位。ByteA 阅读全文

posted @ 2013-10-31 14:07 gllxy 阅读(799) 评论(0) 推荐(0) 编辑

2013年10月14日

SSL/TLSV1.0 programe in linux

摘要: 一、几个名词:1.SSL(Secure Socket Layer)是Netscape公司设计的主要用于WEB的安全传输协议。这种协议在WEB上获得了广泛的应用。2. IETF将SSL作了标准化,即RFC2246,并将其称为TLS(Transport Layer Security),从技术上讲,TLS1.0与SSL3.0的差别非常微小。SSL可以用于保密的传输,这样我们与WebServer之间传输的消息便是“安全的”。二、原理1.SSL是一个介于HTTP协议与TCP之间的一个可选层,其位置大致如下:---------| HTTP |---------| SSL |---------| TCP | 阅读全文

posted @ 2013-10-14 17:36 gllxy 阅读(727) 评论(0) 推荐(0) 编辑

2013年10月12日

PEM文件

摘要: OpenSSL 使用 PEM 文件格式存储证书和密钥。PEM 实质上是 Base64 编码的二进制内容,再加上开始和结束行,如证书文件的-----BEGIN CERTIFICATE-----和-----END CERTIFICATE-----。在这些标记外面可以有额外的信息,如编码内容的文字表示。文件是 ASCII 的,可以用任何文本编辑程序打开它们。观察这个示例 PEM 文件。Certificate: Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: md5WithRSAEncryption Issuer: 阅读全文

posted @ 2013-10-12 15:13 gllxy 阅读(10293) 评论(0) 推荐(0) 编辑

编译OpenSSL

摘要: 一、编译OpenSSL 在编译OpenSSL前,需要正确安装Perl,因为在编译OpenSSL时需要使用到该程序。 下载最新版本的Perl:http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.8.822-MSWin32-x86-280952.zip。然后安装之。 下载最新版本的OpenSSL:http://www.openssl.org/source/openssl-0.9.8g.tar.gz 然后将源码释放的c:\openssl-0.9.8g目录中。 进入openssl源码目录。 cd c:\opens 阅读全文

posted @ 2013-10-12 13:28 gllxy 阅读(768) 评论(0) 推荐(0) 编辑

导航