zoukankan      html  css  js  c++  java
  • Java基础13-数组算法

    1.数组的复制

     1 //复制算法,将arr1数组的值复制给arr2数组
     2 import java.util.Arrays;
     3 public class Test1{
     4     public static void main(String[] args){
     5         int[] arr1={88,99,66,55};
     6         int[] arr2=new int[arr1.length];
     7         
     8         for(int i=0;i<arr1.length;i++){
     9             arr2[i]=arr1[i];
    10         }
    11         System.out.println("数组arr2的值:");    
    12         for(int i=0;i<arr1.length;i++){
    13             System.out.println(arr2[i]);    
    14         }
    15         
    16                         
    17     }
    18 }

    2.查找算法(搜索)

     1 import java.util.Scanner;
     2 import java.util.Arrays;
     3 public class Test1{
     4     public static void main(String[] args){
     5         Scanner in=new Scanner(System.in);
     6         System.out.println("请输入你要查询的名字:");
     7         String n=in.next();
     8         String[] name={"张三","李四","王二","小明"};
     9         boolean flag=false;//标记
    10         
    11         for(int i=0;i<name.length;i++){
    12             if(n.equals(name[i])){
    13                 flag=true;
    14                 break;
    15             }
    16         }
    17         if(flag==true){
    18             System.out.println("搜到了");
    19         }else{
    20             System.out.println("该名字不存在");
    21         }
    22             
    23                             
    24     }
    25 }

    3.插入算法

     1 /*插入算法
     2 23,32,57,78,98,100从小到大排列,此时在100的位置插入25,顺序就变了,此时就需要进行判断
     3 */
     4 import java.util.Scanner;
     5 
     6 public class Test1{
     7     public static void main(String[] args){
     8         Scanner in=new Scanner(System.in);
     9         int[] arr={23,32,57,78,98,100};
    10         System.out.println("请输入你要插入的数字:");
    11         int num=in.nextInt();
    12         arr[arr.length-1]=num;
    13         for(int i=arr.length-1;i>0;i--){
    14             if(arr[i]<arr[i-1]){
    15                 int temp=arr[i];
    16                 arr[i]=arr[i-1];
    17                 arr[i-1]=temp;
    18             }else{
    19                 break;
    20             }
    21         }
    22         
    23         for(int i=0;i<arr.length;i++){
    24             System.out.println(arr[i]);
    25         }
    26         
    27     }
    28 }

    4.冒泡排序(选出老大后,后面的还要来和老大比)

     1 //冒泡排序
     2 import java.util.Arrays;
     3 public class Test1{
     4     public static void main(String[] args){
     5         int[] num={65,23,56,12,88,3,5,13,109};
     6         //从小到大排序
     7         for(int j=0;j<num.length-1;j++){
     8             for(int i=0;i<num.length-1;i++){
     9                 if(num[i]>num[i+1]){
    10                     int temp=num[i];
    11                     num[i]=num[i+1];
    12                     num[i+1]=temp;
    13                 }
    14             }
    15         }
    16         
    17         for(int i=0;i<num.length;i++){
    18             System.out.println(num[i]);
    19         }                        
    20     }
    21 }

    5.选择排序(选出老大后,老大就可以休息了,不比了,后面以此类推)  比冒泡排序效率更高

     1 //选择排序
     2 import java.util.Arrays;
     3 public class Test1{
     4     public static void main(String[] args){
     5         //从小到大排序
     6         int[] num={65,23,56,12};
     7         for(int i=0;i<num.length-1;i++){
     8             for(int j=i+1;j<num.length;j++){ //j<4
     9                 if(num[i]>num[j]){
    10                     int temp=num[i];
    11                     num[i]=num[j];
    12                     num[j]=temp;
    13                 }
    14             }
    15         }
    16         for(int i=0;i<num.length;i++){
    17             System.out.println(num[i]);
    18         }
    19     }
    20 }

     

  • 相关阅读:
    iOS 第四期考核题(字符串/字典/数组的使用)
    oc之字典创建 复制 获取key value值
    oc之字典排序(将字符串转换成数字排序) 把字典放在数组内进行输出 字典赋值
    oc之可变字典创建 添加 删除 遍历
    oc之NSSortDescriptor(描述器排序)
    oc之获取系统当前时间的方法
    oc之数组排序 id nsobject instancetype的区别
    oc之类排序
    oc--习题
    oc 笔记--NSArray NSMutableArray 创建 添加 查询 复制 遍历等
  • 原文地址:https://www.cnblogs.com/shenhainixin/p/9957175.html
Copyright © 2011-2022 走看看