• 请不要在回答技术问题时复制粘贴 AI 生成的内容
rqxiao
V2EX  ›  程序员

一道算法题?

  •  
  •   rqxiao · Sep 27, 2020 · 2356 views
    This topic created in 2068 days ago, the information mentioned may be changed or developed.

    一个从小到大排列过的的 int 数组, 需要分成 n 份数组,每份数组 必须也是从小到大, 尽量保持 每份数组中元素相差不多,每组数量也都差不多。

    5 replies    2020-09-27 20:17:37 +08:00
    Cbdy
        1
    Cbdy  
       Sep 27, 2020
    有点类似希尔排序的逆过程
    canbingzt
        2
    canbingzt  
       Sep 27, 2020
    for(int i=0;i<arr.length;i++){
    ret[i%n][i/n]=arr[i];
    }
    好像这样就行了
    AddictX
        3
    AddictX  
       Sep 27, 2020
    都排好序了,也没啥特别要求,那就直接等分成 N 份,每份 M=array.size()/N 个,剩下的 Y=array.size()-NM 个均分就好了;或者取区间的时候让前 Y 个数组的右区间+1
    zaima
        4
    zaima  
       Sep 27, 2020
    按 5 为大小分就好了
    justforlook44444
        5
    justforlook44444  
       Sep 27, 2020
    题目应该有问题吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   949 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 21:12 · PVG 05:12 · LAX 14:12 · JFK 17:12
    ♥ Do have faith in what you're doing.