详谈线性表之数组合并问题(两种方法)

   最近一段时间总是打不开CSDN,想发博客都发不了。。。这几天在学Oracle的过程中,把顺序表的合并搞了出来,虽然难度不大,而且思路很多,但是还是希望自己的东西可以供大家借鉴一下的~~有两种方法,其中一种用到了Java本身封装的方法,感觉十分的简单粗暴。。。

import java.util.Arrays;

public class SeqListTest {
 public static void Bubble_Sort(int A[], int N) {
  for (int P = N - 1; P >= 0; P--) {
   int flag = 0;
   for (int i = 0; i < P; i++) {
    if (A[i] > A[i + 1]) {
     int temp = A[i];
     A[i] = A[i + 1];
     A[i + 1] = temp;
     flag = 1;
    }
   }
   if (flag == 0)
    break;
  }
  for (int k = 0; k < A.length; k++) {
   System.out.print(A[k] + " ");
  }
 }

 public static void main(String args[]) {
  int A[] = new int[] { 0, 1, 2, 5, 7 };
  int B[] = new int[] { 4, 6, 8, 9, 10 };
  //方法1
  int i = 0;
  int C[] = new int[A.length + B.length];
  for (; i < A.length; i++) {
   C[i] = A[i];
  }
  int m = i;
  for (; m < C.length; m++) {
   C[m] = B[m - B.length];
  }
  /*
   * int j = 0;
   * for(;j < B.length;j++)
   * {
   *  C[m] = B[j]; m++;
   * }
   */
  Bubble_Sort(C, 10);
  System.out.println();
  // 方法2
  System.arraycopy(A, 0, C, 0, A.length);
  System.arraycopy(B, 0, C, A.length, B.length);
  Arrays.sort(C);
  for (int k = 0; k < C.length; k++) {
   System.out.print(C[k] + " ");
  }
 }
}


你可能感兴趣的:(java,数据结构,线性表,顺序表的合并)