
数据结构与算法
文章平均质量分 75
miechalzhao
这个作者很懒,什么都没留下…
展开
-
判断字符串是否对称
#include#include#define MAX 100typedef struct stack{ char data[MAX]; int top;}SeqStack;void InitStack(SeqStack *&s){ s=(SeqStack*)malloc(sizeof(SeqStack)); s->top =-1;}void C原创 2010-04-11 18:14:00 · 1667 阅读 · 2 评论 -
简单移位加密
//#include#include#includeconst int MAX=100;//using namespace std;class SampleReplace{public: SampleReplace(){ch='/0';memset(temp,0,sizeof(temp));}; ~SampleReplace(){}; void DoEncr原创 2010-03-29 17:35:00 · 3268 阅读 · 0 评论 -
图片加密解密程序
原创程序,若要转载,请标明转载出处....谢谢! #include#include#include#include#define WIDTHBYTES(bits) (((bits)+31)/32*4)typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned long DWORD;原创 2010-03-29 17:37:00 · 3083 阅读 · 3 评论 -
双向链表Class-template
//double LinkList implement with C++ template#includeusing namespace std;/*templateclass DBListADT{ public: virtual void Append(const Type &)=0; virt原创 2011-01-01 20:28:00 · 1609 阅读 · 0 评论 -
算术表达式求值
#include#includeusing namespace std;const int MAXSIZE=100;typedef struct stack{ char data[MAXSIZE]; int top;}SeqStack;typedef struct Stack{ int data[MAXSIZE]; int top;}SeqIntStack;typedef struct queue{ char data[MAXSIZE]; int rear,front;}Queue;///////////原创 2011-01-03 14:22:00 · 1443 阅读 · 0 评论 -
编译原理(递归下降分析程序)
#include#include#includeusing namespace std;int i=0;string nexttoken;char ch;void A();void A1();void read(){ ch= nexttoken[++i];}void error(){ cout不是本文法的句型!原创 2009-11-11 19:10:00 · 3106 阅读 · 0 评论 -
一道有趣的GOOGLE算法题
问题描述:一个大小为n的数组,里面的数都属于范围[0, n-1],有不确定的重复元素,找到至少一个重复元素,要求O(1)空间和O(n)时间。如果没有时间,空间的要求,那解法会相当的多,hash table,STL当中的set等都可以很方便的解决。网上大多的解法是基于基数排序,还有标记法。本人由于兴趣,采用交换标记法,代码如下:#include#includebool Rep原创 2012-12-01 23:01:28 · 2844 阅读 · 0 评论 -
编译原理(词法分析程序)
#include #include #include #includevoid Scaner();//词法分析扫描函数int IsRetainLetters(char *ch);//判断是否为保留字char * DecimalToBinary(char *buf);//十进制转二进制函数char GetCh(FILE *fp);//读取文件中的字符,每次只读取一个字原创 2009-11-11 19:18:00 · 2209 阅读 · 0 评论 -
编译原理(预测分析法)
#include #include #include #include#define MAXSIZE 100typedef struct //定义顺序栈{ int data[MAXSIZE]; int top;//栈顶指针}SeqStack;SeqStack *s;//定义一个指向顺序栈的指针变量void Scaner();//词法分析扫描函数vo原创 2009-11-12 21:51:00 · 3664 阅读 · 12 评论 -
动态数组对比STL vector及其实现(c/c++)
c/c++动态数组动态数组 顾名思义能 动态增加内存的数组。 STL标准库中的vector具有类似的功能,c标准库的realloc也具有类似的功能,那为何还需要自己实现动态内存方式呢?对于追求效率,和有重要性能需求的我们来说,实现动态数组能让我们的程序运行的更有效率,下面分别谈一下vector 和realloc.1.vector再STL标准库的实现当中,vector内存不够时,会动态的原创 2012-11-20 11:29:03 · 7606 阅读 · 0 评论 -
全排列算法c++实现
问题:Given a collection of numbers, return all possible permutations.For example,[1,2,3] have the following permutations:[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], and [3,2,1].Solution:#incl原创 2012-11-21 18:45:39 · 2091 阅读 · 0 评论 -
图片加密解密程序2
#include#include#include#includetypedef unsigned char BYTE;typedef unsigned short WORD;void ECBencrypto(char *in_fname,char *password,char *out_fname);void CBCencrypto(char *in_fname,c原创 2010-04-03 16:58:00 · 1979 阅读 · 1 评论