- 博客(15)
- 资源 (28)
- 收藏
- 关注
原创 模拟编码译码(huffman编码应用)
用huffman编码对一些字符进行编码,然后再将用户输入的桔子进行编码,还有译码等。一个huffman 编码的小应用文件"huffman.h"#include #include #include using namespace std;//栈模版templateclass My_stack;templateclass Node //结点类{private:
2011-11-28 13:39:02 1667
原创 次优查找树
在有序序列的查找中,如果各个元素的查找概率都是一样的,那么二分查找是最快的查找算法,但是如果查找元素的查找概率是不一样的,那么用二分查找就不一定是最快的查找方法了,可以通过计算ASL来得知。所以基于这种查找元素概率不想等的有序序列,可以通过构造最优二叉树的方法,使得该二叉树的带权路径长度最小,这样的二叉树的构造代价是非常大的,所以用一种近似的算法,构造次优查找树,该树的带权路径长度近似达到最小
2011-11-28 10:08:52 3323 2
原创 学生信息管理小程序(线索二叉树实现)
用线索二叉树结构来构建一个学生信息管理系统,支持的操作的代码中会看到,主要的难点是线索二叉树的删除和插入操作,在以前有写过一篇线索二叉树的博客,里面有介绍线索二叉树的几本操作,但是当时没有写删除操作,线索二叉树。这次的代码中,加入了删除操作,我觉得也是整个程序里面的一个难点。主要是情况较多,要分每一种情况进行讨论,而且操作过程中,需要定位待删除节点的父节点。下面的代码有交详细解释,上代码//S
2011-11-21 14:15:04 3620 1
原创 再写——Prim && Kruskal
重新写了最小生成树的两个经典算法—— prim 和 kruskal算法,之前写的Prim算法,是比较直接的 就是先让边的集合为空,然后在扫描最小边的过程中,也是根据该算法的定义来写的 是比较直接的写法 看这里 就是之前的Prim算法实现 ,这次实现的,个人比较喜欢。思想是这样的:(1)先在最小树的顶点集U={v},以和v相邻的所有边为候选边;(2)重复以下步骤n-1次,使得其他n-1个
2011-11-16 00:21:07 1961 1
原创 求图的简单路径和回路
下面是用邻接表存储无向图,然后输出图中指定顶点间的指定长度的简单路径,简单路径就是路径中的顶点不重复,还有一个就是求出图中经过某顶点的回路,都是对图的遍历算法的应用,主要是深度优先的遍历,加上简单的回溯。下面是代码://文件"graph.h"#include #include #include using namespace std;bool visited[20];int
2011-11-14 13:13:03 10805 7
原创 邻接多重表存储无向图以及有关操作
数据结构是编程里面最重要的一门基础课之一,所以学多少遍都不可以嫌多,算法的知识当然是融在其中,多练习,多思考,基础打好了,其他的东西学起来也就so easy了。邻接多重表,是对用邻接表存储无向图的一种压缩存储,当然也是链式存储,邻接多重表的相关概念,可以百度、谷歌、或者看有关书籍。大部分书都没有详细介绍这个结构的应用(至少我目前还没看到有书上有写),只是说 这个结构在对无向图的边进行操作的时候
2011-11-13 13:08:02 4206 3
原创 有向图的十字链表存储以及相关操作
以十字链表作为有向图的存储结构,将邻接表和逆邻接表结合起来,对统计结点的出入度很方便,这是之前的一篇日志,也是说图的存储的,有兴趣的也可以看看 图的几种存储结构下面是代码://graph.h#include #include #include #include using namespace std;bool visited[100]; //顶点是否已被访问的标志数
2011-11-10 18:34:59 7968
原创 再写_邻接表和邻接矩阵存储图
之前写的 在遍历那边有点问题 非连通图的时候 非递归的深度优先 和广度优先遍历 会出错 进行了改正 下面是代码#include#include#include#includeusing namespace std;//下面是循环队列模版templateclass My_queue;templateclass Node{private: T data; Node *
2011-11-10 00:06:44 3345
原创 用Scanner进行输入
用scanner来进行输入的话 就比用BufferedReader要来的安全和方便些,下面是找到的一个介绍scanner的从 JDK 5.0 开始,基本类库中增加了java.util.Scanner 类,根据它的 API 文档说明,这个类是采用正则表达式进行基本类型和字符串分析的文本扫描器。使用它的Scanner(InputStream source) 构造方法,可以传入系统的输入流Syste
2011-11-08 19:08:43 2328
原创 用BufferedReader输入
JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in 获得系统的输入流,再桥接至字符流从字符流中读入数据。示例代码如下:import java.io.IOException;import java.io.InputStreamReader;public class Test1 { public static void main(String
2011-11-08 15:46:41 2224
原创 关系代数——除法
之前一直对除法的理解不好,这次找了篇不错的,收藏起来1.关系运算的分类 (1)基本运算操作:并、差、笛卡尔积、投影和选择。 (2)组合运算操作:交、联接、自然联接和除。 另外,还有几种扩充的关系代数操作:外联接(左外联接和右外联接)、外部并和半联接。 2.除法定义的理解 设两个关系R和S的元数分别为r和s(r>s>0),那么R÷S是一个(r-s)元的元组的集合
2011-11-06 23:36:05 13495 4
原创 SQL语句执行顺序
一、sql语句的执行步骤:1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义。 2) 语义分析,检查语句中涉及的所有数据库对象是否存在,且用户有相应的权限。 3)视图转换,将涉及视图的查询语句转换为相应的对基表查询语句。 4)表达式转换, 将复杂的 SQL 表达式转换为较简单的等效连接表达式。5)选择优化器,不同的优化器一般产生不同的“执行计划” 6)选择连
2011-11-06 23:10:01 1160
原创 并查集
并查集,也叫不相交集的数据结构。具体的可以百度,有很多,这里不再说具体的定义,给出一种实现,包含了路径压缩。#include using namespace std;const int MAX_SIZE=100;int parent[MAX_SIZE];int rank[MAX_SIZE];int Find(int x){ int y,root,w; y=x; wh
2011-11-06 20:56:23 784
原创 再写 Huffman_Tree
之前写的huffman树的代码这次的只是对建树过程的代码做了一点改变,对比代码一看就知道了tree.h#includeusing namespace std;//栈模版templateclass My_stack;templateclass Node //结点类{private: T data; Node *next;public: Node() {
2011-11-06 15:21:12 867
转载 计算机开机过程详解
公选课作业之一,在网上搜集之后,觉得这个的写的比较好懂 收藏下来先1 引言很多人认为计算机开机就是按下主机上的电源开关那么简单,其实在我们按下电源开关,到出现操作系统界面期间,计算机经历了系统加电、系统自检和加载操作系统等一些列过程,了解计算机的开机过程可以帮助解决计算机无法开机、启动速度慢等一些列问题,从而保证计算机的征程启动,提高开机素的,最大限度地节约开机时间2 基本概念
2011-11-05 13:46:15 2276
ios小项目——新浪微博客户端
2012-04-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人