文章详情页
算法 - 用代码获取流程走向(Java)
浏览:253日期:2024-01-10 18:17:14
问题描述
需求是这样的,有很多类似的流程如下:
有一个函数,我传入一个开始节点Node,能够获取所有的流程走向,包装List返回,比如上面这张图就有两种走向:通过和不通过。我开始用递归来做,类似这样:

测试了几个流程,确实能达到效果,但是一遇到复杂的流程(上百种走向)的时候,
递归就会有性能问题(栈溢出等)请问各位大神,像这种情况除了递归还有什么解法吗?如果没有,这种递归有哪里可以优化的地方?小弟能力有限,想了几天没啥好办法....
问题解答
回答1:问题是递归的,实现未必要用递归。可以把 '还未搜索的Node' 放到一个List中,每次找到的新Node放到List最后,下一轮搜索开始时从List最后取。
还应当使用动态规划减少重复搜索。完全搜索时这个问题是NP的。
回答2:这个是工作流吧????
标签:
java
相关文章:
1. angular.js - angularjs scope.$watch取不到input变化的值2. mysql - 仅仅只是把单引号与反斜杠转义不用prepare statement能否避免sql注入?3. 如何解决docker宿主机无法访问容器中的服务?4. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!5. docker api 开发的端口怎么获取?6. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?7. docker网络端口映射,没有方便点的操作方法么?8. javascript - Android 的 webview 中怎么监听 url 的 hash 变化9. javascript - canvas压缩图片的原理是什么10. java - 为什么第一个线程已经释放了锁,第二个线程却不行?
排行榜

网公网安备