大数据学习-2024-2.25
1.两个数组元素先合并再排序(升序)
package com.shujia.day04;
public class shuzupx {
public static void main(String[] args) {
int[] arr1 = {1, 7, 9, 11, 13, 15, 17, 19};
int[] arr2 = {2, 4, 6, 8, 10};
int count=0;
for (int i=0;i<arr1.length;i++){
count++;
}
for (int i=0;i<arr2.length;i++){
count++;
}
int[] newArr = new int[count];
int index=0;
for (int i=0;i<arr1.length;i++){
newArr[index]=arr1[i];
index++;
}
for (int i=0;i<arr2.length;i++){
newArr[index]=arr2[i];
index++;
}
for(int i=0;i<newArr.length-1;i++){
for(int j=0;j<newArr.length-i-1;j++){
if (newArr[j] > newArr[j+1]) {
int tmp=newArr[j];
newArr[j] = newArr[j + 1];
newArr[j + 1] = tmp;
}
}
}
for (int i=0;i<newArr.length;i++){
System.out.print(newArr[i]+",");
}
}
}
2.冒泡排序
package com.shujia.day05;
public class BubbleSort {
public static void main(String[] args) {
int[] arr={12,4,5,65,543};
System.out.print("排序前:");
printArray(arr);
for (int i=0;i<arr.length-1;i++){
for (int j=0;j<arr.length-i-1;j++){
if(arr[j]>arr[j+1]){
int tmp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=tmp;
}
}
}
System.out.print("排序后:");
printArray(arr);
}
public static void printArray(int[] arr){
for (int index=0;index<arr.length;index++){
if(index==0){
System.out.print("["+arr[index]+",");
}else if (index==arr.length-1){
System.out.println(arr[index]+"]");
}else {
System.out.print(arr[index]+",");
}
}
}
}
3.二分查找
package com.shujia.day05;
public class Erfenfind {
public static void main(String[] args) {
int[] arr={3,12,24,36,55,68,75,88,100};
int number=24;
int front=0;
int end=arr.length-1;
int mid=(front+end)/2;
boolean flag=true;
while (front<=end){
if (number<arr[mid]){
end=mid-1;
} else if (number>arr[mid]) {
front=mid+1;
}else {
System.out.println("找到该元素,索引为:"+mid);
flag=false;
break;
}
mid=(front+end)/2;
}
if(flag){
System.out.println("没有该元素!");
}
}
}
4.输入某年某月某日,判断这一天是这一年的第几天?
package com.shujia.day05;
import java.util.Scanner;
public class Year_month {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr1 = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int[] arr2 = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
System.out.println("请输入年份:");
int year = sc.nextInt();
System.out.println("请输入月份:");
int month = sc.nextInt();
System.out.println("请输入号:");
int day = sc.nextInt();
int days=0;
if (year%100!=0 && year%4==0){
for (int i=0;i<month-1;i++){
days+=arr2[i];
}
days+=day;
}else {
for (int i=0;i<month-1;i++){
days+=arr1[i];
}
days+=day;
}
System.out.println("当前是"+year+"年中的第"+days+"天");
}
}
5.选择排序
package com.shujia.day05;
public class Xuanze {
public static void main(String[] args) {
int[] arrA = { 12, 22, 8, 49, 3 };
for (int i = 0; i < arrA.length; i++) {
for (int j = i + 1; j < arrA.length; j++) {
if (arrA[i] > arrA[j]) {
int tmp = arrA[i];
arrA[i] = arrA[j];
arrA[j] = tmp;
}
}
}
for (int i = 0; i < arrA.length; i++) {
System.out.print(arrA[i]+",");
}
}
}
6.求二维数组里面元素和
public class Array2Test2 {
public static void main(String[] args) {