算法
文章平均质量分 77
xiaoyao1212121
这个作者很懒,什么都没留下…
展开
-
大数计算器
#include #include #include #include using namespace std;#define MAX_DIGIT 500//大数运算:加法int Multiply(int *a,int *b,int *&result);//大数运算:乘法int Add(int *a,int *b,int *&result);//大数运算:减法int S转载 2012-02-19 18:22:36 · 1518 阅读 · 0 评论 -
KMP模式匹配字符串
/*** KMP算法的学习【复杂度O(M + N)】 两个字符串的长度和* Next数组的求法【核心】 + 思想: 指示主串的指针[i]不回溯,只是指示模式串的指针[j]发生回溯* * 例子:* 主串S: ababcabcaabcbaabc* 模式串T: ababcabababc** 模式串对应的Next数组的值:* 未改进前的Next值:* Next值: 0 1原创 2012-07-19 22:17:08 · 724 阅读 · 0 评论 -
稀疏矩阵【压缩算法】,具体代码没有,只是思想
/*** 稀疏矩阵的知识,比较重要的是压缩存储!* 定义: 假设m行n列的矩阵中,只有t个非零元素,则成 t/(m*n)为稀疏因子,当稀疏因子<=0.05的时候称为稀疏矩阵* 产生的问题: 大约95%的元素都是0,占用的空间很大,计算的时候也和这些0做了很多运算(+,-,*,/),而/法还不能除0,所以特别麻烦* * 压缩存储:* (1)特殊矩阵(三角矩阵,对角矩阵)的压缩存储比较简原创 2012-07-20 14:33:37 · 1641 阅读 · 0 评论 -
二叉树详细学习【线索二叉树还有点迷糊】
/***【一】 了解二叉树的概念: 左子树,右子树,根,堂兄弟,左孩子,右孩子,父节点* 性质1: 在二叉树的第i层上至多有2^i个节点 性质2: 深度为h的二叉树, 最多节点个数: 2^0 + 2^1 + 2^2 + ... 2^(h-1) = 2^h - 1 性质3: 【除了根节点没有双亲外,其他节点都有双亲】 节点数 = 分支数 + 1* 满二叉树: 深度为k,且含有2^k原创 2012-07-21 20:08:35 · 2304 阅读 · 0 评论 -
树与森林,哈希曼树
/**** 【树与森林】* * 树: 可以分为有序树和无序树,我们主要研究无序树: 树的各种问题都能通过转换成二叉树来解决 (如果二叉树表示的是树: 那么左边不再是左子树,而是孩子,右边不在是右子树,而是兄弟)* 【一】树的表示方法: ①双亲表示法:【以顺序存储为例】 节点结构: typedef struct PtNode原创 2012-07-22 16:23:56 · 1940 阅读 · 0 评论 -
图的知识归纳
/** 线性结构: 一对一 树性结构: 一对多 图结构: 多对多* 【部分算法参考于:http://kjwy.5any.com/sjjg/index1.htm】** 【图】* 【一】图的定义:【有一堆基本术语和五种存储结构:http://kjwy.5any.com/sjjg/index1.htm】 【二】图的遍历:原创 2012-07-23 21:53:35 · 1005 阅读 · 0 评论 -
求S字符串中最长重复子串
/** 题意: * 如: S = "abcdsetseabcd" 这个字符串中的最长重复子串就是abcd,长度为4 S = "tmabcdefpiabcdef" 这个字符串的最长重复子串就是abcdef,长度为6 S = "aaaaaaaa", 最长重复子串就是aaaaaaa,长度为7* * 分析: 利用的工具就是KMP字符串匹配里面用到过的Next值,原创 2012-07-20 20:29:30 · 7740 阅读 · 1 评论 -
小菜学堆排序
/*2012-09-06 19:18堆排序1.要先把数组建堆,建成最大堆(MAX_HEAP)或者最小堆(MIN_HEAP)【把所有非叶子节点都调用一次维护最大/最小堆函数,就可以得到一个堆排序后的数组了】2.建堆的时候只要调用维护最大堆或者最小堆的函数即可3.HeapSort():这步把堆中的最大值(树根节点)和最后一个节点交换,把length--。即可把最大值分离出来;原创 2012-09-06 19:52:33 · 890 阅读 · 0 评论 -
银行家算法模拟
/*=============================================================================4.银行家算法的数据结构. 1),系统剩余资源量A[n],其中A[n]表示第I类资源剩余量. 2),各进程最大需求量,B[m][n],其中B[j][i]表示进程j对i 类资源最大需求. 3),已分配资源量C[m]原创 2012-10-30 09:51:24 · 809 阅读 · 0 评论