search

Home  >  Q&A  >  body text

不连续数组排序简单方法?

一个整型一维数组 删掉 不连续的数字

比如{1,2,4,5,2,4,5} 变成{1,2,3,4,2,3,4}

数组会很长,但是 数值会比较小

我的想法是 找到空缺的数组 比如{2,1,6,7,6,9} 找到 {3,4,5} 然后再 比较如果大于就 减

然后再循环,但是 感觉中间这步就已经有点麻烦了.

再 编辑一下 删掉不连续的数字的意思是 比如 第一个数组 没有3, 那么 数组里大于3的都减1,不是删掉项比如 {2,1,6,7,6,9} 变成{2,1,3,4,3,5}

看来我还是没说明白,就是保证数组里的数是连续的;减3是因为 这个数组里没有3 比3大的最小的数是6 所以要减成3 所以比3大的都要减3; 比如{5,2,3,4,8,9} 应该为{4,1,2,3,5,6}


高洛峰高洛峰2934 days ago1541

reply all(2)I'll reply

  • 欧阳克

    欧阳克2016-11-19 15:33:01

    坐等牛逼算法的出现!!!!卧槽,彻底懵逼了,你让你旁边人看看,他是否明白你说的什么?

    reply
    0
  • 三叔

    三叔2016-11-19 15:32:49

    抱歉我不知道{1,2,4,5,2,4,5}是怎么排成{1,2,3,4,2,3,4}的,还望解释清楚一下题意。

    reply
    0
  • Cancelreply