- 博客(11)
- 收藏
- 关注
原创 二叉树的非递归遍历
前几天数据结构课的时候,讲到二叉树的非递归遍历,老师照着严蔚敏书上的代码讲解,什么先找到最左的节点,再如何如何。。。我听得很是乱,但是我只记得之前好像在哪里看到过,其实并没有必要这么麻烦。我首先是写出了先序的代码,个人认为思路比严的代码要清晰。//先序遍历S.push (m_root);while(!S.empty()) { p = S.top();
2015-10-30 16:28:12
419
原创 并查集
再简单的数据结构也有实现的必要并查集并查集(Union-Find)还是一个很值得我们学习的数据结构,它代码简单,但带来的性能改善却是非常明显的,而且是一个动态的数据结构。
2015-10-06 14:36:23
541
原创 线性表的链式实现
再简单的数据结构都有实现的意义线性表是最最基础的数据结构,因此我们需要高效地实现它,并用它为我们以后构建高效的数据结构提供帮助。实现过程中的疑惑有人建议笔者在表头处放置一个空的头结点,说是这样可以方便我们在最开始插入元素,但整个程序写下来,也没觉得方便了多少,因此下次准备不加试试。类的封装性让我无法处理链表的归并。一开始,我的想法是类中的归并函数,接受一个List的对象,把两个对象归并,并把接受
2015-10-06 09:52:15
432
转载 红黑树
const bool RED = true;const bool BLACK = false;struct Node{ int num; Node* left; Node* right; bool color; int N; Node(int v) { num = v; left = right = NULL
2015-09-15 12:24:00
297
转载 最小生成树
演示地址Prim算法1.概览普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。2.算法简单描述输入:一个加权连通图,其中顶点集合为V,边集合为E;初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),En
2015-05-02 21:37:58
496
转载 欧拉函数
定义: 对于正整数n,φ(n)是小于或等于n的正整数中,与n互质的数的数目;例如: φ(8) = 4, 因为1,3,5,7均和8互质。性质: 1. 若p是质数,φ(p)= p-1.2. 若n是质数p的k次幂,φ(n)= (p-1)p^(k-1) 3. 欧拉函数是积性函数,若m,n互质,φ(mn)= φ(m)φ(n)根据这3条性质我们就可以推出一个整数的欧拉函数的公式,因为一个数总可以一
2015-04-21 22:53:02
610
原创 HDU 1160 FatMouse's Speed
FatMouse’s Speed 题目要求找出体重严格递增的同时,速度严格递减的老鼠们,而且要输出尽可能长的一个例子。 题目的本质就是在对体重排升序后,求速度的最长递减序列。 I/O方面一个不一样的地方就是输入的时候没有提前告诉我们总共有多少数据。#include<iostream>#include<algorithm>using namespace std;struct mice{
2015-04-11 08:43:20
293
转载 高精度算法模板
转自九野的博客 因为偶尔要用,转过来备用。。//1#define MAXN 720struct HP{ int len,s[MAXN]; HP() { memset(s,0,sizeof(s)); len=1; } HP operator =(const char *num) { len=strl
2015-04-05 16:21:55
517
原创 开始写博客了!
写博客的目的希望能一个记录自己学习历程和外界有所交流 博主目前就读于杭州某高校的计算机专业,我们学校acm竞赛的氛围还算不错,因此我对这方面也些接触。在平时在oj上水题遇到问题的时候,第一个想法就是上百度上搜,一般都能搜到我想要的代码。以前我的做法都是弄个word文档,先是打自己的看法,然后是关键代码,今天突然觉得这样的做法实在是古板。 写博客主要是为了记录一些自己认为值得再次看的代码,如果
2015-04-04 15:07:43
449
原创 频度直方图
#include#define IN 1#define OUT 0#includevoid countchar(int ar[],int index);void output(int ar[]);int main(void){ int ar[15],index=0,i,j,length; printf("你到是输点东西啊!\n"); for(i=0;i<15 i="" ar="" i="" 0="
2014-10-19 09:53:16
712
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人