java - 您将如何对长度为 3 的整数类型数组进行排序,其中最后一个索引是中间值?


Integer[] array = new Integer[3];
array[0] = 3;

给定一个要插入到数组中的值。

我相信这将类似于使用插入排序 -一个while循环和一个 -if 语句

最后一个索引是索引 [0] & [1] ([0]<[
  • 2]<[1]) 的中间值

  • 数组的长度为 3。

  • 默认情况下,整数将位于数组[0] 索引中。

例如,正确排序的数组 (1,3,2) , (5,10,8)

步骤#1)

  • 如果数组中只有 1 个值,则只需比较 valueToInsert 和数组中的值即可。

值插入 = 3

(0,空,空)-->(0,3,空)

步骤#2)

  • 如果数组中有 2 个值,则必须将 valueToInsert 与数组中的两个值进行比较,并放置在正确的位置。
  • 值插入 1. 只能放置 [0](如果小于 [0]),2. 放置在 [1](如果大于 [1]
  • ,3. 放置在 [2](如果大于 [0] 且小于 [1]

值插入 = 2

(0,3,空) --> (0,3,2)

这将如何实施?

如果只有 3 个元素,则无需循环

。假设 3 个变量abc保存数组元素012

int a=arr[0], b=arr[1], c=arr[2];

要对其进行排序:

arr[0] = Math.min(Math.min(a, b), c);
arr[1] = Math.max(Math.max(a, b), c);
arr[2] = (a+b+c) - (arr[0] + arr[1]);

最新更新