数据结构
亦木95
stay hungry,stay foolish
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
hash表实现
#define DefaultSize 50#include#include#includeusing namespace std;enum Status{Empty,Full};templatestruct HashNode{ T data; Status st; HashNode(){} HashNode(T d ,Status s):data(d原创 2016-02-26 20:42:56 · 325 阅读 · 0 评论 -
Robson方法遍历二叉树
逆转链方法遍历二叉树:在检测指针指向左子树或右子树遍历下去时,把原来的左子女指针或右子女指针逆转,记忆父节点。在回溯时,再把指向父节点的指针逆转回来。为了识别是从左子女翻上去还是从右子女翻上去的,需要为每个节点增加一个标志tag---在翻转左子女指针的时候tag = 1,在翻转右子女指针的时候tag = 0;在退回到父节点后,若tag = 1,恢复左子女的指针指向,否则恢复右子女的原创 2016-02-22 16:30:30 · 431 阅读 · 0 评论 -
非递归遍历二叉树的实现
#pragma once#define NUM_NODE 8#include#include#include#includeclass binnode {public: int key; char value; binnode *left, *right,*parent; bool beVisited; //用于中序遍历的指针回溯版本 bool beP原创 2016-04-16 23:00:33 · 430 阅读 · 0 评论 -
跳表的实现
#ifndef SKIPLIST_H_INCLUDED#define SKIPLIST_H_INCLUDEDconst int maxLevel = 5;templatestruct SLNode{ int level; //当前节点在跳表的层数 T data; SLNode *next; //指向同一原创 2016-02-24 09:44:56 · 599 阅读 · 0 评论 -
二叉查找树的实现
参考算法导论第12章//头文件bintree.h//定义了binnode,bintree类#pragma once#define NUM_NODE 7#include#include#include#includeclass binnode {public: int key; char value; binnode *left, *right,*parent; boo原创 2016-04-17 00:51:59 · 443 阅读 · 0 评论 -
集合的无序链表实现
templatestruct SetNode{ T data; SetNode *link; SetNode(){link = NULL;} SetNode(T &item){data = item;link = NULL;}};templateclass Set{private: SetNode *first; int length;p原创 2016-02-24 10:00:07 · 416 阅读 · 0 评论 -
卡特兰数
简介编辑卡特兰数又称卡塔兰数,英文名Catalan number,是组合数学中一个常出现在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)的名字来命名,其前几项为 : 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845,转载 2016-05-05 12:17:55 · 531 阅读 · 0 评论
分享