加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在java中,如果只替换最后一个数字项,那么对整数数组进行排序的最

发布时间:2020-12-15 05:16:53 所属栏目:Java 来源:网络整理
导读:这是一个整数数组. 它是这样创建的: 没有元素重复.每次添加元素时,其编号是下一个可用的整数,从0开始.这样,如果连续添加6个元素,它们将按顺序为0,1,2,3,4,5.如果你删除一个元素,那么数组会缩小,并且两个元素之间留下一个“洞”,由于这个间隙,它们不再是连续
这是一个整数数组.
它是这样创建的:
没有元素重复.每次添加元素时,其编号是下一个可用的整数,从0开始.这样,如果连续添加6个元素,它们将按顺序为0,1,2,3,4,5.如果你删除一个元素,那么数组会缩小,并且两个元素之间留下一个“洞”,由于这个间隙,它们不再是连续的:0,5.然后出现了问题:如果你添加一个新元素,它会被添加到最后,但是具有下一个可用的整数.因此,数组现在为0,5,2.它需要进行排序,因此2可以占据1和3之间的位置.
最好的方法是什么?我想到了几种方法.该列表几乎是有序的,并且它具有以下属性:当它被排序时,每个元素等于或大于其在数组中的索引.我目前正在进行冒泡排序(不要笑),我认为快速排序是矫枉过正,我不想去递归或使用临时数组,我不想更改add-element方法(它添加元素在结束),所以必须在添加元素后立即对其进行排序(因此只有最后一个元素不合适)

解决方法

拿最后一个元素做一个 insertion sort.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读