1. 程式人生 > >數組(冒泡,選擇,排序)

數組(冒泡,選擇,排序)

java程序 查找 src 10個 現在 引用數據類型 false 空間 eight

數組的格式
數據類型[] 數組名 = new 數據類型[數組長度]
例如
想要創建一個能夠存儲10個int類型數據的容器
int[] array = new int[10]
分為三個動作:
1.聲明了一個數組(=號左邊的部分)
2.創建一個數組對象 在內存中給數組分配存儲空間(=號右邊 new部分)
3.給數組中的元素初始化一個相應數據類型的默認初始化值

技術分享圖片
內存分析
棧內存 和 堆內存
java程序在運行時 如何分配內存空間

棧內存 存儲的是基本數據類型的變量數據 / 對象的引用 / 方法
堆內存 存儲new出來的實體 數組/對象
new出來的東西 叫做實體
每一個實體 都有內存地址值
實體中變量都有默認初始化值
不同數據類型的初始化值不同
基本數據類型
byte short int 初始化值 0
long 初始化值 0L
float 初始化值 0.0F
double 初始化值 0.0
boolean 初始化值 false
char 初始化值 a
引用數據類型
初始化值 null

技術分享圖片
.1 選擇排序
原理:
選擇一個位置 拿這個位置上的值 不斷和其他位置的值進行比較
將值最小的元素交換至左側
每一輪比較的次數 比上一輪都少一次
經過第一輪的比較 最小值 先出現在左側
以此類推

技術分享圖片
2 冒泡排序
原理:
相鄰的兩個元素之間進行兩兩比較 大的先出現在右側(升序角度)

技術分享圖片
3 二分查表法
折半查找
和順序查找一樣 功能都是根據元素查找角標
根據元素 查找元素在當前數組中第一次出現的位置
找到了 返回對應索引
找不到 返回-1

前提: 必須是有序數組

技術分享圖片

數組(冒泡,選擇,排序)