java实现向有序数组中插入一个元素实例

时间:2022-03-12 21:27:05

整理文档,搜刮出一个java实现向有序数组中插入一个元素,稍微整理精简一下做下分享

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package cn.jbit.array;
import java.util.*;
 
public class Insert {
 
  public static void main(String[] args) {
    //字符排序
    char[] chars = new char[9];
     
    chars[0] = 'a';
    chars[1] = 'c';
    chars[2] = 'u';
    chars[3] = 'b';
    chars[4] = 'e';
    chars[5] = 'p';
    chars[6] = 'f';
    chars[7] = 'z';
 
    System.out.print("原字符序列:");
    for(int i = 0; i < chars.length; i++){
      System.out.print(chars[i] + " ");
    }
    Arrays.sort(chars);   //对数组进行升序排序
    System.out.print("\n升序排序后:");
    for(int i = 0; i < chars.length; i++){
      System.out.print(chars[i] + " ");
    }
     
    //实现插入字符
    int index = chars.length;  //保存新增成绩插入位置
    char ch='m';
    System.out.println("\n待插入的字符是: "+ch);
   
    //找到新元素的插入位置
    for(int i = 0; i < chars.length; i++){
      if(ch < chars[i]){
        index = i;
        break;
      }
    }      
     //元素后移
    for(int j = chars.length-1; j > index; j--){
      chars[j] = chars[j-1]; //index下标开始的元素后移一个位置
    }
    chars[index] = ch;//插入数据
    System.out.println("插入字符的下标是:"+index);
    System.out.print("插入后的字符序列是: ");
    for (int k = 0; k < chars.length; k++) { // 循环输出目前数组中的数据
      System.out.print(chars[k] + " ");
    }
 
 
  }
 
}

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/qq_34137397/article/details/53040574