zoukankan      html  css  js  c++  java
  • Java

    6.给定两个数组a{1,2,3}  b{4,5} 合并两个数组 (创建一个新的数组5长度)
    public class Array { public static void main(String[] args){ int [] arrayA = new int[]{1, 2, 3}; int [] arrayB = new int[]{4, 5}; int [] newArray = new int[arrayA.length + arrayB.length]; for(int i = 0; i < newArray.length; i++){ if(i < arrayA.length) { newArray[i] = arrayA[i]; }else{ newArray[i] = arrayB[i - arrayA.length]; } } for(int var : newArray){ System.out.println(var); } } }
    7.给定一个数组a{1,2,3,9,4,5} 按照数组中的最大值位置 将数组拆分成两个{1,2,3,9} {4,5}
    public class Array { public static void main(String[] args){ int [] array = new int[]{1, 2, 3, 9, 4, 5}; int max = array[0]; int index = 0; for(int i = 0; i < array.length; i++){ if(max < array[i]) { max = array[i]; index = i; } } int [] arrayNewA = new int[index+1]; int [] arrayNewB = new int[array.length - arrayNewA.length]; for(int i = 0; i < array.length; i++){ if(i < index+1){ arrayNewA[i] = array[i]; }else{ arrayNewB[i - index-1] = array[i]; } } for(int var : arrayNewA){ System.out.println(var); } System.out.println("---------------"); for(int var : arrayNewB){ System.out.println(var); } } }
    8.给定一个数组a{1,2,3,0,0,4,5,0,6,0,7} 去掉数组中的0元素 (创建一个新数组 短的 非零元素挑出来)
    //去除数组中的0元素
    public class ArrayRemoveZero {
        public void RemoveZero(int[]arrayA){
            System.out.println("原数组元素:");
            for (int result:arrayA){
                System.out.println(result+"	");
            }
            int count = 0;//用来记录0元素个数
            for (int i=0;i<arrayA.length;i++){
                if(arrayA[i]==0){
                    count++;
                }
            }
            int index = 0;
            int[] newArray = new int[arrayA.length-count];//创建一个数组存储
            for(int i=0;i<arrayA.length;i++){
                if(arrayA[i]!=0){
                    newArray[index++] = arrayA[i];
                }
            }
    
            System.out.println("新数组元素:");
            for (int result:newArray){
                System.out.println(result+"	");
            }
        }
    }
    9.创建一个数组 存储2-100之间的素数(质数)
    方法一: 空间占用小,执行效率慢
        ①通过一个几千次的循环确定应该创建的数组的长度
        ②通过一个几千次循环找寻素数,将素数存入数组内
    public class Array {
        public static void main(String[] args){
            int count = 0;
            for(int num = 2; num <= 100; num++){
                for(int i = 2; i <= num/2; i++){
                    if(num % i ==0){
                        count++;
                        break;
                    }
                }
            }
            int index = 0;
            int [] array = new int [99 - count];
            for(int num = 2; num <= 100; num++){
                boolean flag = false;
                for(int i = 2; i <= num/2; i++){
                    if(num % i ==0){
                        flag = true;
                        break;
                    }
                }
                if(!flag){
                    array[index++] = num;
                }
            }
            for(int var : array){
                System.out.println(var);
            }
        }
    }
    方法二: 执行效率高 空间占用大
        ①创建一个足够长的数组,并且通过几千次循环找寻素数,将其存入数组
        ②将数组素数后的0元素删除
    
    public class Array {
        public static void main(String[] args){
            int [] array = new int [50];
            int index = 0;
            for(int num = 2; num <= 100; num++){
                boolean flag = false;
                for(int i = 2; i <= num/2; i++){
                    if(num % i ==0){
                        flag = true;
                        break;
                    }
                }
                if(!flag){
                    array[index++] = num;
                }
            }
            int[] newArray = new int[index];
            for(int i=0;i<newArray.length;i++){
                newArray[i] = array[i];
            }
            array = null;
            for(int v:newArray){
                System.out.println(v);
            }
        }
    }
    10.冒泡、直接选择排序
    /*冒泡排序的基本思想
        冒泡排序的基本思想是对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动
      到数组前面,把数值大的元素移动到数组后面,这样较小的元素就像气泡一样从底部升到顶部
    */
    public class MaoPaoSort {
        public void sort(int[] arrayA,boolean flag){//true为升序,false为降序
            System.out.println("排序前:");
            for (int result:arrayA){
                System.out.print(result+"	");
            }
            System.out.println();
            for(int i=1;i<arrayA.length;i++){//i控制第几趟排序
                for (int j=0;j<arrayA.length-i;j++){//j控制每趟比较的次数
                   if(flag){
                       if(arrayA[j]>arrayA[j+1]){
                           int temp = arrayA[j];
                           arrayA[j] = arrayA[j+1];
                           arrayA[j+1] =temp;
                       }
                   }else {
                       if(arrayA[j]<arrayA[j+1]){
                           int temp = arrayA[j];
                           arrayA[j] = arrayA[j+1];
                           arrayA[j+1] =temp;
                       }
                   }
                }
            }
            System.out.println("排序后:");
            for (int result:arrayA){
                System.out.print(result+"	");
            }
        }
    }
    package order2_xuanze;
    
    /**
        直接选择排序的基本思想
            将指定排序位置与其他数组元素分别对比,如果满足条件就交换元素。
            注意这里与冒泡排序的区别:不是交换相邻的元素,而是把满足条件的元素与指定
        的排序位置交换。
    */
    public class StraightSelectSorting {
        public void straightSelectSorting(){
            int [] array = {100,95,158,20,32,19,1,0,79};
            //从小到大 从前往后
            for (int i = 0; i < array.length; i++) {//控制数值存放的位置
                //每一次里面需要从当前i位置之后找   找到最小值
                int index = i;  //用来记录最小值的索引位置
                for(int j=i+1; j<array.length; j++){
                    if(array[j]<array[index]){
                        index = j;
                    }
                }
                int temp = array[index];
                array[index] = array[i];
                array[i] =temp;
            }
            for (int i = 0; i < array.length; i++) {
                System.out.println(array[i]);
            }
        }
    
        public static void main(String[] args) {
            StraightSelectSorting sort = new StraightSelectSorting();
            sort.straightSelectSorting();
        }
    }

    思路如下:

    11.实现用户登录
    import java.util.Scanner;
    
    public class Array {
        public static void main(String[] args){
            String [] userBox ={"星期一","星期二","星期三"};
            int [] passwordBox = {123, 234, 345};
            Scanner input = new Scanner(System.in);
            System.out.println("请输入用户名:");
            String user = input.nextLine();
            System.out.println("请输入密码:");
            int password = input.nextInt();
            boolean flag = false;
            for(int i = 0; i < userBox.length; i++){
                if(userBox[i].equals(user)){
                    if(passwordBox[i] == password){
                        System.out.println("登录成功");
                        flag = true;
                    }
                    break;
                }
                }
            if(!flag){
                System.out.println("账号或密码错误");
            }
        }
    }
  • 相关阅读:
    企业资源管理概述
    有效的使用WSE(学习+实践)
    和优秀的员工一起工作,是一种幸福
    [恢]hdu 1312
    [恢]hdu 1010
    [恢]hdu 1302
    [恢]hdu 1056
    [恢]hdu 1030
    [恢]hdu 1730
    [恢]hdu 1032
  • 原文地址:https://www.cnblogs.com/yyanghang/p/10962852.html
Copyright © 2011-2022 走看看