第六周

先来点美图欣赏欣赏

然后就是本周的学习内容捏:

二分查找:

public static int binarySearch(int[] array, int key) {

        int left = 0;

        int rigth = array.length - 1;

        while (left <= rigth) {

            int mid = (left + rigth) / 2;  

            if (array[mid] < key) {    

                left = mid + 1;        //从右侧区间继续找   

            }else if (array[mid] == key) {

                return mid;           //找到了

            }else {

                rigth = mid - 1;      //从左侧区间继续找

        }

    }

    return-1;     //返回值 因为数组下标没有负数

}

 

    public static void main(String[] args) {

        int[] array = {12,24,3,8,6};

        int index = binarySearch(array,8);  //输入数组中你想要找的数

        if (index == -1) {

            System.out.println("没有你要找的关键字!");

        }else {

            System.out.println("找到了你要的关键字,下标是:"+index);

        }

    }

 

//-----------------------------------------------------------------------------------------------

数组的逆序:

public static void reverse(int[] array) {

        int left = 0;

        int right = array.length-1;

        int tmp = 0;

        while (left < right) {

            tmp = array[left];

            array[left] = array[right];

            array[right] = tmp;

            left++;

            right--;

        }

    }

 

    public static void main(String[] args) {

        int[] array1 = {12,24,3,8,6};

        System.out.println("逆置之前的数组:"+ Arrays.toString(array1));

        reverse(array1);

        System.out.println("逆置之后的数组:"+ Arrays.toString(array1));

 

    }

 

 

//-------------------------------------------------------------------------------------------------

打印随机数:

package com.yau;

 

import java.util.ArrayList;

import java.util.Random;

 

public class Practice01 {

       public static void main(String[] args) {

              Random r = new  Random();//创建一个随机数对象

              int [] arr = new int [10];//创建一个长度为10的数组

              ArrayList list = new ArrayList();//创建一个List集合

              for(int i = 0; i < arr.length; i++) {

                     arr[i] = r.nextInt(100);//把获取到的1-100以内的随机数放到数组里    面

                     if(arr[i] > 10) {

                            list.add(arr[i]);//把大于十的数添加到集合里

                     }     

              }

              System.out.println(list);//读取集合中的数

       }

}

posted on 2022-08-06 21:40  wardream  阅读(36)  评论(0)    收藏  举报