摘要:
转http://blog.csdn.net/mageshuai/article/details/3851172栈与队列更多的作为程序员的工具来使用,构思算法的辅助工具,而数组、链表等是作为数据存储工具,适用于数据库应用中做数据记录,但栈与队列不是完全的数据存储工具,他们的生命周期比较短,在程序操作执行期间他们才被创建,在完成任务后就被销毁。栈与队列的访问是受限制的,即在特定时刻只有一个数据项可以被读取或被删除。他们可以用数组或链表来实现,比数组、链表更加抽象。Stack在解析算数表达式方面的应用对分隔符的匹配验证大部分微处理器运用基于栈的体系结构方法:pushpoppeekTop指针,指向栈顶 阅读全文
摘要:
最近重新温习数据结构,自己编写了一个关于二叉树的代码,分享下。#include<iostream>#include<process.h>using namespace std;typedef struct TreeNode{ char c; TreeNode *leftchild; TreeNode *rightchild;}TreeNode;int cmpTree(TreeNode *tree1, TreeNode *tree2){ bool isTree1_Null = (tree1 == NULL); bool isTree2_Null = (tree2 =... 阅读全文
摘要:
Trie树,又称为字典树或者叫键树,是一种hash树的改进。经常应用于统计和排序大量的字符串,或者查找字符串。Trie树的结构如下:数据结构如下:typedef struct iNode{ char symbol; iNode *first; //子节点的第一个节点 iNode *next; //邻居节点}iNode;完整代码如下:View Code 1 #include<iostream> 2 #include<iomanip> 3 using namespace std; 4 5 typedef struct iNode 6 { 7 char symbol;... 阅读全文