Java——單鏈表的拆分
阿新 • • 發佈:2018-11-29
Problem Description
輸入N個整數順序建立一個單鏈表,將該單鏈表拆分成兩個子連結串列,第一個子連結串列存放了所有的偶數,第二個子連結串列存放了所有的奇數。兩個子連結串列中資料的相對次序與原連結串列一致。
Input
第一行輸入整數N;;
第二行依次輸入N個整數。
Output
第一行分別輸出偶數連結串列與奇數連結串列的元素個數;
第二行依次輸出偶數子連結串列的所有資料;
第三行依次輸出奇數子連結串列的所有資料。
Sample Input
10
1 3 22 8 15 999 9 44 6 1001
Sample Output
4 6
22 8 44 6
1 3 15 999 9 1001
AC程式碼:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner mi = new Scanner(System.in); int n = mi.nextInt(); int[] a = new int[n]; int[] b = new int[n]; int k1 = 0, k2 = 0; for (int i = 0; i < n; i++) { int x = mi.nextInt(); if (x % 2 == 0) { a[k1++] = x; } else { b[k2++] = x; } } System.out.println(k1 + " " + k2); for (int i = 0; i < k1 - 1; i++) { System.out.print(a[i] + " "); } System.out.println(a[k1 - 1]); for (int i = 0; i < k2 - 1; i++) { System.out.print(b[i] + " "); } System.out.println(b[k2 - 1]); mi.close(); } }
————————
餘生還請多多指教!