首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

公式排序解决办法

2012-03-13 
公式排序根据公式的运算顺序排序:例如;公式:AD+C B10 CB+5 DB+C排列如下:B10 CB+5 DB+C AD

公式排序
根据公式的运算顺序排序:例如;
  公式:A=D+C; B=10; C=B+5; D=B+C;排列如下:
  B=10; C=B+5; D=B+C; A=D+C
那位大哥能简单说下排序的算法。非常感谢!

[解决办法]
这是拓扑排序,把等式左边的点全部列出来,然后扫描每个表达式右部,比如c=b+5,那么就把b到c连一条边,这个过程结束后,找入度为0的点的表达式,然后将这个点的所有边全删掉,继续重复上述过程。。
[解决办法]
练习题不是有排课程的题目吗?这个不是一样的意思嘛,没有字母的可以排第一个,有包含某个字母的公式则必须排在该字母的公式后面。
[解决办法]
给运算顺序赋值,可以和普通排序一样处理。
[解决办法]
这个题和POJ 1094是一个意思。要构造有向图,我当时用邻接矩阵做的。
[解决办法]
如果表达式中有多个值,大小不确定,比如C+A会排在B+C后面,那么就用冒泡发写一个字符串排序的存储过程,然后对表达式进行预处理就可以实现排序。我还在忙,搞不定的话给我留言。

热点排行