百度空间 | 百度首页 
 
文章列表
 
您正在查看 "学习类" 分类下的文章

2009年09月24日 星期四 下午 04:29

/*
题目描述:对于一个字节(8bit)的无符号整形变量,求二进制表示中“1”的个数,要求算法执行效率尽可能地高
*/
#include <windows.h>
#include <iostream>
using namespace std;

int Count(BYTE v);
int main()
{
BYTE v=255;
cout<<Count(v);
return 0;
}

方法一:直接的方法就是除以2向右移位, 逐个统计,但是用到取模和相除,这个很耗资源。
int Count(BYTE v)
{
int num=0;
while (v)
{
 

类别:学习类 | 评论(0) | 浏览()
 
2009年09月03日 星期四 下午 07:38

     OpenSSL一共实现了4种非对称加密算法,包括DH算法、RSA算法、DSA算法和椭圆曲线算法(EC)。DH算法一般用户密钥交换。RSA算法既可以用于密钥交换,也可以用于数字签名,当然,如果你能够忍受其缓慢的速度,那么也可以用于数据加密。DSA算法则一般只用于数字签名。我想用RSA作为例子来描述Openssl公钥算法的实现过程。

/*****************RSA Code******************/

#includ

类别:学习类 | 评论(0) | 浏览()
 
2009年09月03日 星期四 下午 06:46

        Openssl中有AES、DES、Blowfish、CAST、IDEA、RC2、RC5等对称算法的实现函数,而且有一个统一的编程接口,很方便应用,但难于理解,当然你也可以自己去写Openssl的扩展函数,这样就更加方便了。这里我想用DES 算法来举例说说Openssl编程的一般流程。以下是VC环境里调试成功的程序,可以直接运行。

       在运行程序之前你必须做好前期准备,否则无法调试,这里我们要用到Openssl的EVP,我们需要在工程中引入要用到的链接库文件libeay32.lib

类别:学习类 | 评论(1) | 浏览()
 
2009年09月03日 星期四 下午 05:52

       Openssl,一个强大的开放源代码的SSL协议实现。作为一个基于密码学的安全开发包,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

1.对称加密算法
       OpenSSL一共提供了8种对称加密算法,其中7种是分组加密算法,仅有的一种流加密算法是RC4。这7种分组加密算法分别是AES、DES、Blowfish、CAST、IDEA、RC2、RC5,都支持电子密码本模式(

类别:学习类 | 评论(0) | 浏览()
 
2009年05月10日 星期日 下午 02:17

分组

我们已经提到了怎么重复单个字符(直接在字符后面加上限定符就行了);但如果想要重复多个字符又该怎么办?你可以用小括号来指定子表达式(也叫做分组),然后你就可以指定这个子表达式的重复次数了,你也可以对子表达式进行其它一些操作(后面会有介绍)。

(\d{1,3}\.){3}\d{1,3}是一个简单的IP地址匹配表达式。要理解这

类别:学习类 | 评论(0) | 浏览()
 
2009年05月10日 星期日 下午 02:13

正则表达式

本文转载自:http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

  1. 如何使用本教程
  2. 正则表达式到底是什么东西?
  3. 入门
  4. 测试正则表达式
  5. 元字符
  6. 字符转义
  7. 重复
  8. 字符类
  9. 分枝条件
  10. 反义
类别:学习类 | 评论(0) | 浏览()
 
2008年09月14日 星期日 下午 05:42

#include"iostream.h"
void Swap(int &a,int &b)
{
int temp=a;
a=b;
b=temp;
}
void Perm(int list[],int k,int m)
{
if(k==m)
{
   for(int i=0;i<=m;i++)
   {
    cout <<list[i];
   }
   cout <<endl;
}
else
{
   for(int i=k;i<=m;i++)
   {
    Swap(list[k],list[i]);
 

类别:学习类 | 评论(0) | 浏览()
 
2008年06月29日 星期日 下午 08:01

1.2 文件的输入输出函数

    键盘、显示器、打印机、磁盘驱动器等逻辑设备, 其输入输出都可以通过文件管理的方法来完成。而在编程时使用最多的要算
是磁盘文件, 因此本节主要以磁盘文件为主, 详细介绍Turbo C2.0提供的文件操作函数, 当然这些对文件的操作函数也适合于非磁
盘文件的情况。
    另外, Turbo C2.0提供了两类关于文件的函数。一类称做标准文件函数也称缓冲型文件函数, 这是ANSI标

类别:学习类 | 评论(0) | 浏览()
 
2008年06月14日 星期六 下午 04:03

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
int i,len,num;
char a[20],b[20],*p;
memset(b,'\0',sizeof(a));        //开辟一个数组存放所有的数字字符,先将数组中每个元素赋值为'\0'
gets(a);
len=strlen(a);
for(i=0;i<len;i++)
   if((a[i]>='0')&&(a[i]<='9'))
    b[i]=a[i];

for(i=0;i<len;i++)
{
  

类别:学习类 | 评论(0) | 浏览()
 
2008年04月09日 星期三 上午 11:17
第一题 矩阵变换和矩阵方程求解
一.程序要求: 已知
A=12.384120 2.115237 -1.061074 1.112336 -0.113584 0.718719 1.742382 3.067813 -2.031743
2.115237 19.141823 -3.125432 -1.012345 2.189736 1.563849 -0.784165 1.112348 3.123124
-1.061074 -3.125432 15.567914 3.123848 2.031454 1.836742 -1.056781 0.336993 -1.010103
1.112336 -1.012345 3.123848 27.108437 4.101011 -3.741856 2.101023 -0.718280 -0.037585
-0.113584 2.189736 2.031454 4.101011 19.897919 0.431637 -3.111223 2.121314 1
类别:学习类 | 评论(0) | 浏览()
 
     
 
 
文章分类
 
 
 
 
 
 
 
 
 
     
 
文章存档
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
 
最新文章评论
   

thanks but hardly to read ^^;;
 

有没有没有错误的啊
 
 

总结:积累高效算法很重要!
 

那就学一下C语言那。
 
     


©2009 Baidu