12 2009 档案

摘要:直接插入排序(straight insertion sort)是一个简单的排序方法,他的基本操作是将一个记录插入到已经排好序的有序表中,从而得到一个新的,记录数增1的有序表。例如,已知待排序的一组记录初始排列如下: 49,38,65,97,76,13,27,49 -----a假设排序过程中,前4个记录已经有序,构成了一个有序列,如 38,49,65,97 ----------b现在要将第五个记录76插入到上面序列中,以得到一个新的含5个记录的有序序列。在b序列中进行查找以确定76应该插入的位置,然后进行插入。假设从左开始查找,则76应该插入到65和97之间。这就是一趟直接插入排序。一般情况下, 阅读全文
posted @ 2009-12-24 19:13 音乐啤酒 阅读(1969) 评论(0) 推荐(0) 编辑
摘要:这是一个比较有意思的二叉树。也是研究动态查找表一种方法动态查找表是在查找一个表(某个数据结构)的过程,不仅仅有查询过程,也有添加,删除的操作。二叉排序树(Binary Sort Tree)具有以下性质:1.如果他的左子树不空,则左子树上所有结点的值都小于他的根结点的值。2.如果他的右子树不空,则右子数上所有结点的值都大于他的根结点的值。3.他的左右子树分别也是二叉排序树。图示: 二叉排序树又称二叉查找树,根据上述的特点,他的查找过程和次优二叉树类似。查询的时候当树不空的时候,先将判断的值和树的根结点比较,如果相等则查找成功。如果不等根据大小关系,继续在左右子树上进行查询。 通常使用二叉链表作为 阅读全文
posted @ 2009-12-24 01:01 音乐啤酒 阅读(330) 评论(0) 推荐(0) 编辑
摘要:Base64编码的作用:由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。它使用下面表中所使用的字符与编码。而且base64特别适合在http,mime协议下快速传输数据。base64其实不是安全领域下的加密解密算法。虽然有时候经常看到所谓的base64加密解密。其实base64只能算是一个编码算法,对数据内容进行编码来适合传输。虽然base64编码过后原文也变成不能看到的字符格式,但是这种方式很初级,很简单。 Base64编码方法要求把每三个8Bit的字节转换为四个6Bit的字节,其中,转换之后的这四个字节中每6个有效bit为是 阅读全文
posted @ 2009-12-23 18:44 音乐啤酒 阅读(2141) 评论(0) 推荐(0) 编辑
摘要:分块查找也称索引顺序查找,是顺序查找的一种改进方法。在此查找法中,除表本身以外,尚需建立一个“索引表”。比如表22,12,13,8,9,20,33,42,44,38,24,60,58,74,49,86,53可以将表分成3个子表:从(1.。。6),(7.。。。12,(13.。。18)对每个子表建立索引项,索引项包含两个内容:关键字项(就是子表的最大关键字),指针项(指示这个关键字在子表的第一个记录在总表中的位置)。索引表按关键字有序,则表或者有序或者分块有序。“分块有序”指的是第二个字表的所有记录都大于第一个字表,依次类推。因此分块查找分两部分。先确定待查记录所在的块也就是子表,然后在块(子表) 阅读全文
posted @ 2009-12-22 23:55 音乐啤酒 阅读(3124) 评论(0) 推荐(0) 编辑
摘要:从图的某一个顶点出发访问遍图中其余所有顶点,并且使每个顶点只被访问一次,这个过程称为图的遍历。 在图的遍历过程中,为了避免某个顶点被多次访问,一般使用一个辅助数组vistied【n】,他的初始值是false,对应的顶点访问过一会值为true。图的遍历算法有:深度优先搜索和广度优先搜索,对无向图和有向图都适用。 以该图a为描述实例 1 深度优先搜索 (Depth_First_Search) 深度优先搜索类似于树的先根遍历,深度优先搜索从图中某个顶点v出发,访问此顶点,然后依次从v的未访问的邻接点出发深度优先遍历图,直至和v有路径相同的顶点都被访问过;若此时图中尚有顶点未被访问,则另选图中一个未. 阅读全文
posted @ 2009-12-21 19:43 音乐啤酒 阅读(415) 评论(0) 推荐(0) 编辑
摘要:图的结构比较复杂,任意两个顶点之间都可能有联系,因此无法以数据元素在存储区中的物理位置来确定元素的关系,所以图没有顺序映像的存储结构,但是可以借助数组的数据类型来表示元素之间的关系。 另一方面,用多重链表表示图是自然的事,他是一种最简单的链式映像存储结构,即由一个数据域和多个指针域组成的节点表示图中的一个顶点,其中数据域存放顶点的信息,指针域指向其邻接点的指针。 图有以下几种存储结构 1 数组表示法 用两个数组分表存储图的顶点信息和数据元素之间的关系(也就是图的边或弧的信息) 形式如下: --------------图的数组(领教矩阵)存储表示----------- #define infi. 阅读全文
posted @ 2009-12-21 02:03 音乐啤酒 阅读(624) 评论(0) 推荐(0) 编辑
摘要:递归是程序设计中一个强有力的工具,在数据结构中 递归的实现是通过栈这个数据结构来实现的递归设计的实质是:当一个复杂的问题可以分解成若干子问题来处理时,其中某些子问题与原来问题有相同的特征属性,则可以利用和原来问题相同的分析处理方法;反之,这些子问题解决了,原来的问题也就解决;递归定义的归纳就是描述这种原问题和子问题之间的转换关系。以汉诺塔为例(Hanoi)假设有3个塔名字分别是x,y,z。在塔x的上面插有n个直径大小各不相同,从小到大编号为1,2,3,n的圆盘。现在要求将x塔上的n个圆盘移动到z塔上。并按同样的顺序来排列,圆盘移动的时候必须遵循以下规则:1,每次只移动一个;2,圆盘可以插在x, 阅读全文
posted @ 2009-12-17 23:28 音乐啤酒 阅读(271) 评论(0) 推荐(0) 编辑
摘要:字符串的模式匹配,就是通常见的IndexOf函数的实现过程。就是查询某个字符串T在另外一个字符串S中出现的位置使用定长顺序存储结构的字符串可以简单的描述这个过程先假定几个前提,设置几个类型#define SIZE 80typedef struct Chunk{char ch[SIZE];struct Chunk *next;}Chunk;typedef struct{Chunk *head,*tail;//串的头尾指针int curLen;//串的当前长度}//c,c++的字符串中0位置存储的是串的长度匹配思想如下:分别用指数i和j指示主串S和子串T的当前要比较的字符串的位置。基本思想是:从主 阅读全文
posted @ 2009-12-16 23:19 音乐啤酒 阅读(527) 评论(0) 推荐(0) 编辑
摘要:update一般是做单表操作的。但是有时候某些业务下update某个表的时候,用的数据可能是其他表的数据,这个时候可以使用jion方式语句如下update a set count = a.count + b.count from a left join b on a.id=b.id 阅读全文
posted @ 2009-12-15 01:04 音乐啤酒 阅读(3162) 评论(0) 推荐(0) 编辑
摘要:好久没跟新博客了,最近在研究Mozilla的框架技术,真是麻烦 MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称,是在windows平台下搭建linux环境下的c++开发环境。从官网可以下载这个安装文件是exe文件,简单的安装就可以,只是安装目录不要有空格mingw安装的时候回让你选择一个编译器,一般就是gcc编译器了,但是Mozilla推荐的一个工具集中mingw使用的是你本机安装的vs版本的编译器。如果是gcc编译器,在编译cpp文件的时候就是有g++命令,如果使用的vs中的vc编译器就是有cl命令对单个c+ 阅读全文
posted @ 2009-12-04 00:09 音乐啤酒 阅读(1378) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示