荷兰国旗问题java
生活随笔
收集整理的這篇文章主要介紹了
荷兰国旗问题java
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
public class HollandFlagProblem {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubint[] A = { 2, 0, 2, 0, 0, 2, 1, 1, 0, 2, 1, 0, 1, 2, 0, 1, 2, 0, 1, 0,2, 1, 0, 2, 0, 1, 2, 0, 1, 2, 0, 2, 1, 0 };// 排序前for (int i : A) {System.out.print(i + " ");}sort(A);// 排序后for (int i : A) {System.out.print(i + " ");}}public static void sort(int[] arr) {int cur = 0;int start = 0;int end = arr.length - 1;while (cur <= end) {if (arr[cur] == 0) {swap(arr, cur, start);start++;cur++;} else if (arr[cur] == 2) {swap(arr, cur, end);end--;} else {cur++;}}}public static void swap(int[] a, int p, int q) {int temp = a[p];a[p] = a[q];a[q] = temp;}
}
總結
以上是生活随笔為你收集整理的荷兰国旗问题java的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: macOS 输入法快速切换工具 —— K
- 下一篇: Fastboot驱动及安装_我是亲民_新