zoukankan      html  css  js  c++  java
  • Day09_数组(上)

    Day09_数组(上)

    数组有默认的初始值

    基本数据类型默认值:

    byte: 0

    short:0

    int: 0

    long: 0L

    float: 0.0F

    double: 0.0

    char: 'u0000'

    Boolean: false

    引用数据类型默认值:

    null

    增强for循环(foreach循环)

    //优点:简单
    //缺点:不能进行与索引相关的操作
    //scores是数组
    int[] scores=new int[10];
    scores={12,4,56,7,89,80}
    for(int s:){
      System.out.println(s);
    }
    

    数组的优点缺点

    优点:遍历快,查询快

    缺点:删除,增加,效率低,原因:需要移动大量的元素

    冒泡排序(得名由来)

    这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

    快速排序

    import java.lang.reflect.Array;
    import java.util.Arrays;
    
    public class FastSort {
        public static void main(String[] args) {
            int[] arr={12,4,5,67,34,23,879,46,4,-79,-67};
            fastsort(arr,0,arr.length-1);
            System.out.println(Arrays.toString(arr));
        }
    
        //快速排序方法,三个参数,arr要排序的数组范围是arr[low]-arr[high]
        public static void fastsort(int[] arr,int low,int high){
            if(low>=high){
                return;
            }
            int i = low;
            int j = high;
            int key= arr[i];
            while(i<j){
                while(key<=arr[j]&&i<j){
                    j--;
                }
                if (i<j){
                    int t;
                    t=arr[j];
                    arr[j]=arr[i];
                    arr[i]=t;
                }
    
                while(arr[i]<=key&&i<j){
                    i++;
                }
                if(i<j){
                    int t;
                    t=arr[j];
                    arr[j]=arr[i];
                    arr[i]=t;
                }
    
                //对key左侧的数组继续操作
                fastsort(arr,low,i-1);
                
                //对key右侧的数组继续操作
                fastsort(arr,i+1,high);
            }
        }
    }
    

    输出:

    [-79, -67, 4, 4, 5, 12, 23, 34, 46, 67, 879]
    
  • 相关阅读:
    SSH框架
    buildroot使用详解
    java下的字符流
    Tomcat的相关配置
    web.xml常用元素配置
    四、Emmet:快速编写HTML,CSS代码的有力工具
    Amazium源码分析:(1)基本介绍
    三、Brackets:一个好用的Web前端开发编辑器
    二、CSS 基本介绍
    一、HTML4背景知识
  • 原文地址:https://www.cnblogs.com/gaoyao/p/13379009.html
Copyright © 2011-2022 走看看