
数据结构与算法分析
yzu_120702117
再给我点时间
展开
-
利用栈写一个程序, 检验文本中的圆括号、方括号、花括号是否正确嵌套.
正确的嵌套是指: [()] 是合法的, 但 [(]) 就是错误的. 算法: 做一个空栈, 读入字符直至文件尾. 如果字符是一个开放符号, 则将其压入栈中. 如果字符是一个封闭符号, 那么若栈为空, 则报错; 若栈不为空, 则将栈元素弹出. 如果弹出的符号不是对应的开放符号, 则报错. 在文件尾, 如果栈非空则报错.原创 2014-06-02 11:11:50 · 2583 阅读 · 0 评论 -
利用散列表实现的字谜游戏
1.老样子,先介绍一下我的程序和方法 输入一个原创 2014-06-02 12:36:19 · 725 阅读 · 0 评论 -
有关中缀表达式到后缀表达式的程序算法
算法分析: 当读到一个操作数的时候,立即把它放到输出中。操作符不立即输出,从而必须 先存在某个地方。正确的做法是将已经见过的操作符放在栈中而不立即输出。当 遇到左圆括号时我们也要将其推入栈中。计算是从一个初始化为空的栈开始的。 如果遇见一个右括号,那么将栈中的元素弹出。将括号写出直到遇到对应的 括号,但是这个左括号只弹出而不输出。 如果见到任何其他的符号,那么从原创 2014-06-02 11:42:36 · 606 阅读 · 0 评论 -
phonebook(binaryheap)
1. 本原创 2014-06-02 12:11:21 · 659 阅读 · 0 评论 -
构造一棵表达式树
算法分析: 该算法将后缀表达式转变成表达式树。由于我们已经有了将中缀表达式 转变成后缀表达式的算法,因此可以从这两种输入表达式生成表达式树。所 描述的方法类似于后缀表达式求值的算法。我们一次一个符号的读入表达式 。如果符号是操作数,那么就建立一个单结点树并将它推入栈中。如果符号 是操作符,他的左、右儿子分别是T1和T2。然后将指向这棵树的指针压入栈 中。 例如输入12原创 2014-06-02 11:17:40 · 867 阅读 · 0 评论 -
最大-最小堆
/**收获及心得 1.熟悉了二叉堆的class,并将其改为了升级版的最大-最小二叉堆 2.学会了声明,定义以及使用友元 3.对vector有了更深的理解 4.percolate down函数的算法断断续续写了四五天才大概满足次二叉堆的性质,收获蛮多 5.至于本次程序是为完成书上P187 6.18的练习题 ***遗留下的问题 1.merge函数还未完成,原创 2014-06-02 11:51:31 · 657 阅读 · 0 评论 -
关于排序的一些整理
最近主要学习了原创 2014-06-08 17:12:18 · 489 阅读 · 0 评论