jnsday
V2EX  ›  问与答

算法问题,两数组之间成员相加匹配,怎么实现?

  •  
  •   jnsday · Feb 26, 2019 · 1906 views
    This topic created in 2654 days ago, the information mentioned may be changed or developed.
    随机生成两个纯数字(包含负数)的数组(数组 A,数组 B ),两个数组中的成员的数量不等。
    例如 数组 A:80,60,-20,69.2,45.8,11,1500
    数组 B:850,-466,26.85 ,66

    最终要得出的结果是 匹配 数组 A 与 数组 B 中 成员的相加关系,成功匹配则剔除这一组成员,不再统计
    生成结果显示如下
    寻找到对应:
    数组 A[1]=数组 B[15]
    数组 A[3]=数组 B[11]+数组 B[20]
    数组 A[2]+数组 A[10]+数组 A[5]=数组 B[4]+数组 B[5]
    数组 A[7]+数组 A[9]=数组 B[21]

    剩余无对应关系的为:
    数组 A[2],数组 A[4],数组 A[..]
    数组 B[2],数组 B[4],数组 B[..]

    这种一般是要设计算法。。。,求大神求解
    4 replies    2019-02-26 20:57:30 +08:00
    midasplus
        1
    midasplus  
       Feb 26, 2019 via Android
    这真的能解吗……
    midasplus
        2
    midasplus  
       Feb 26, 2019 via Android
    @111qqz (指多项式时间复杂度
    meik2333
        3
    meik2333  
       Feb 26, 2019 via Android
    如果数组内的数总和上下限之差比较小的话,可以考虑从下限 dp 到上限。

    如果很大的话,那还是算了。
    akira
        4
    akira  
       Feb 26, 2019
    这个组合+枚举 就好了吧 没有什么特别算法
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1197 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 23:29 · PVG 07:29 · LAX 16:29 · JFK 19:29
    ♥ Do have faith in what you're doing.