gitnot
V2EX  ›  Java

请教大家设计流程节点这个场景适合什么算法?

  •  
  •   gitnot · Jul 21, 2020 · 2117 views
    This topic created in 2151 days ago, the information mentioned may be changed or developed.

    需要设计一个工作流程, 流程包括节点,节点用来记录内容, 节点要求有序且可以灵活增删。

    数据库设计拟定字段:

    node_id 当前节点 ID,

    pre_node 上一个节点 ID,

    对应实体

    @Data

    public class ListNode {

     int nodeId;
    
     int preNode;
    

    }

    如果这样设计, 数据库查出后是一个 List<ListNode>, 需要将这些节点排序, 用什么算法, 或者说要经过什么处理更好呢?

    如果是 pre_node 是一个对象, 我能用归并排序, 但是这里感觉不太会用。

    谢谢大家。

    4 replies    2020-07-22 11:11:56 +08:00
    buliugu
        1
    buliugu  
       Jul 22, 2020
    流程用 flowable 之类现成的流程引擎它不香嘛
    aguesuka
        2
    aguesuka  
       Jul 22, 2020 via Android
    用 hash,O(n)时间复杂度
    ffLoveJava
        3
    ffLoveJava  
       Jul 22, 2020
    @buliugu 太重了, 就一条线没必要
    @gitnot 你不记录后面的节点吗
    gitnot
        4
    gitnot  
    OP
       Jul 22, 2020
    @ffLoveJava 我原设计觉得记录一个节点够用,且更新节点关系操作简单。已经有个实现, 但是想找找最优解。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   963 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 21:47 · PVG 05:47 · LAX 14:47 · JFK 17:47
    ♥ Do have faith in what you're doing.