以下是用Java编写判断数据序列稳定性的代码: ``` public static boolean isStable(int[] arr) { // 创建一个二维数组,第一维存放数值,第二维存放下标 int[][] pairs = new int[arr.length][2]; // 初始化二维数组 for (int i = 0; i < arr.length; i++) { pairs[i][0] = arr[i]; pairs[i][1] = i; } // 对数值进行排序,使用冒泡排序 for (int i = 0; i < pairs.length; i++) { for (int j = i + 1; j < pairs.length; j++) { if (pairs[i][0] > pairs[j][0]) { int tempValue = pairs[i][0]; int tempIndex = pairs[i][1]; pairs[i][0] = pairs[j][0]; pairs[i][1] = pairs[j][1]; pairs[j][0] = tempValue; pairs[j][1] = tempIndex; } } } // 判断排序后的数组是否稳定 for (int i = 0; i < pairs.length - 1; i++) { if (pairs[i][0] == pairs[i + 1][0] && pairs[i][1] > pairs[i + 1][1]) { return false; } } return true; } ``` 该方法接收一个整型数组作为参数,首先将数组的元素以及对应下标存放在一个二维数组中,并对数值进行冒泡排序,排序后再遍历数组,如果排序后相邻元素数值相等且下标不符合稳定性的定义,则说明数组不稳定,否则说明数组稳定。