文章目录
前言
JAVA自学计划Day2
提示:以下是本篇文章正文内容,下面案例可供参考
- 判断 一个数组 是否 被排序,如果没有排序,则使用 快速排序,完成数组的排序 如果已经排序,则通过 二分法查找指定的元素
在数组中出现的索引位置
public static void main(String[] args) {
int[] array = {1, 2, 3, 0, 0, 9};
int ele = 0;
if (!ArrayUtils.isSorted(array)) {
Arrays.sort(array);
}
int i = Arrays.binarySearch(array, ele);
System.out.println(i);
}
- 有15个人围成一圈,从1开始循环式报数,如果报的数是 7的倍数,则从队伍中移除,计算 队伍中最后剩余的人 是 谁?
public static void main(String[] args) {
int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
int num=0;
// 报数计数器
while (array.length > 1) {
for (int i = 0; i < array.length; i++) {
num++;
if (num % 7 == 0) {
array = ArrayUtils.remove(array, i);
i--;
}
}
}
System.out.println(array[0]);
}
- 完成对指定数组的内容 去重
public static void main(String[] args) {
int[] array = {1, 3, 4, 3, 0, 0, 0, 5, 6};
// 创建一个新数组跟原数组等长
int[] newArray = new int[array.length];
// 声名一个有效数字
int index = 0;
// 记录元素0出现的次数
int zeroNum = 0;
// 遍历原数组
for (int i = 0; i < array.length; i++) {
int ele = array[i];
if (ele == 0){
zeroNum++;
}
// 逐个判断新数组是否有该元素
if (!ArrayUtils.contains(newArray, ele) || ele == 0 && zeroNum == 1) {
newArray[index++] = ele;
}
}
// 拷贝新数组中的有效数字存在新数组中
newArray = Arrays.copyOf(newArray, index);
System.out.println(ArrayUtils.toString(newArray));
}
- 【二维数组《杨辉三角》练习题】 使用程序, 输出 前 10行对应的数据
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…
public static void main(String[] args) {
// 创建二维数组 打印10行
int[][] yangHui = new int[10][];
// 定义每一行
for (int i = 0; i < yangHui.length; i++) {
// 每一列的数据
int[] cols = new int[i + 1];
for (int j = 0; j < cols.length; j++) {
// 首尾的数据为1
if (j == 0 || j == i) cols[j] = 1;
else {
cols[j] = yangHui[i - 1][j - 1] + yangHui[i - 1][j];
}
}
// 每一层的列添加到行
yangHui[i]=cols;
}
// 打印数组
for (int i = 0; i < yangHui.length; i++) {
for (int j = 0; j < yangHui[i].length; j++) {
System.out.print(yangHui[i][j]+"\t");
}
System.out.println();
}
}
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档