gpt4 book ai didi

java - 在 java 中,如果仅移动最后一个数字项,则对整数数组进行排序的最佳方法是什么?

转载 作者:搜寻专家 更新时间:2023-11-01 04:06:57 25 4
gpt4 key购买 nike

它是一个整数数组。它是这样创建的:没有重复的元素。每次添加一个元素时,它的编号是下一个可用的整数,从 0 开始。这样,如果连续添加 6 个元素,它们将依次为 0、1、2、3、4、5。如果你删除一个元素,数组就会缩小,并且在两个元素之间留下一个“洞”,由于这个差距,它们不再连续:0、1、3、4、5。然后问题来了:如果你添加一个新元素,它被添加到末尾,但具有下一个可用整数。所以,数组现在是 0, 1, 3, 4, 5, 2。需要对其进行排序,以便 2 可以占据 1 和 3 之间的位置。最好的方法是什么?我想到了几种方法。该列表几乎是有序的,并且它具有这样的属性:当它被排序时,每个元素都等于或大于它在数组中的索引。我目前正在做冒泡排序(别笑),我认为快速排序有点矫枉过正,我不想递归或使用临时数组,我也不想更改添加元素的方法(它在end),所以必须在添加一个元素后立即排序(所以只有最后一个元素不在位)

最佳答案

取最后一个元素并执行 insertion sort .

关于java - 在 java 中,如果仅移动最后一个数字项,则对整数数组进行排序的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3746261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com