- 博客(7)
- 收藏
- 关注
转载 将中缀表达式转换成后缀表达式的三种方 法
1利用栈来实现 2利用语法树 3加括号法 上面的两种方法比较常用,并比较适合解答题的形式,若碰到的 是填空题,很多不太熟练算法的人往往就会轻言放弃(因为不能按 步给分,算半天有可能也得个零分)。在这里,本人提出一种简单的 称之为加括号的方法,它会让你在一些考试中大大受益。不 过,只适合不要求过程的填空、选择题之类。 加括号法就是先将待求的中缀表达式依次排开,再将每 一 步要计算的表达式加上括号,最后将每个运算符移到其所 在括号的外面,这样,从左到右扫描得到的序列去掉括号后就是后缀表达式。 例:将
2010-10-28 10:44:00 2675 2
原创 前缀 中缀 后缀 波兰式 逆波兰式
<br />【摘自Wikipedia】<br />解释<br />逆波兰记法中,操作符置于操作数的后面。例如表达“三加四”时,写作“3 4 +”,而不是“3 + 4”。如果有多个操作符,操作符置于第二个操作数的后面,所以常规中缀记法的“3 - 4 + 5”在逆波兰记法中写作“3 4 - 5 +”:先3减去4,再加上5。使用逆波兰记法的一个好处是不需要使用括号。例如中缀记法中“3 - 4 * 5”与“(3 - 4)*5”不相同,但后缀记法中前者写做“3 4 5 * -”,无歧义地表示“3 (4 5 *) −”
2010-10-28 10:28:00 1133
原创 非递归 中序 后序
#ifndef _BITREE_H#define _BITREE_H#include #include using namespace std;#include #include // 数组存储#define MAX_TREE_SIZE 100typedef char TreeType;typedef TreeType SqBiTree[MAX_TREE_SIZE];// 链表存储typedef struct BiTNode { TreeType data
2010-10-06 19:06:00 450
原创 二叉树 普通的 建立和遍历
<br />关于LevelOrderTraverse 本来不想用STL的 后来发现 自己写的那个没有模板功能 改起来太麻烦了 。。。<br />#ifndef _BITREE_H#define _BITREE_H#include <queue>using namespace std;#include <stdio.h>#include <stdlib.h>// 数组存储#define MAX_TREE_SIZE 100typedef char TreeType;ty
2010-10-06 17:09:00 544
原创 Dij.......最短路径算法
<br />#ifndef _ALGRAPH_H#define _ALGRAPH_H#include <iostream>// #include "Queue.h"/** 邻接表 存储 图*/#define MAX 50unsigned char visited[MAX];void (*VisitFunc)(int v);#define MAX_VERTEX_NUM 20#define MAX_QUEUE_SIZE 100typedef struct {
2010-10-04 23:03:00 2192
原创 Prim 最小生成树算法
<br />#ifndef _ALGRAPH_H#define _ALGRAPH_H#include <iostream>// #include "Queue.h"/** 邻接表 存储 图*/#define MAX 50unsigned char visited[MAX];void (*VisitFunc)(int v);#define MAX_VERTEX_NUM 20#define MAX_QUEUE_SIZE 100typedef struct
2010-10-04 21:04:00 587
原创 图的深度 广度 遍历
<br />#ifndef _ALGRAPH_H#define _ALGRAPH_H#include <iostream>// #include "Queue.h"/** 邻接表 存储 图*/#define MAX 50unsigned char visited[MAX];void (*VisitFunc)(int v);#define MAX_VERTEX_NUM 20#define MAX_QUEUE_SIZE 100typedef struct {
2010-10-04 19:08:00 499
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人