Rumah  >  Soal Jawab  >  teks badan

算法 - 用代码获取流程走向(Java)

需求是这样的,有很多类似的流程如下:

有一个函数,我传入一个开始节点Node,能够获取所有的流程走向,包装List返回,比如上面这张图就有两种走向:通过和不通过。我开始用递归来做,类似这样:

测试了几个流程,确实能达到效果,但是一遇到复杂的流程(上百种走向)的时候,

递归就会有性能问题(栈溢出等)
请问各位大神,像这种情况除了递归还有什么解法吗?如果没有,这种递归有哪里可以优化的地方?小弟能力有限,想了几天没啥好办法....

天蓬老师天蓬老师2743 hari yang lalu538

membalas semua(2)saya akan balas

  • 阿神

    阿神2017-04-18 10:54:54

    1. Masalahnya adalah rekursif, dan rekursi tidak diperlukan untuk pelaksanaan. Anda boleh meletakkan "Nod yang belum lagi dicari" ke dalam Senarai Setiap kali Nod baharu ditemui, ia diletakkan di hujung Senarai Apabila pusingan carian seterusnya bermula, ia diambil dari penghujung Senaraikan.

    2. Pengaturcaraan dinamik juga harus digunakan untuk mengurangkan carian pendua. Masalah ini adalah NP dalam carian lengkap.

    balas
    0
  • 迷茫

    迷茫2017-04-18 10:54:54

    Adakah ini aliran kerja? ? ? ?

    balas
    0
  • Batalbalas