数组高级部分--排序,查找
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组高级部分--排序,查找相关的知识,希望对你有一定的参考价值。
1.数组排序之冒泡排序:
两两比较,大的往后放放,第一次比较完毕之后,最大值就出现在了最大索引出,继续依次比较,得到一个排好序的数组!
2.数组排序之:选择排序:
用0索引依次和后面的索引进行比较,第一次比较完毕之后,最小值出现在了最小索处!
同理,其他索引也是依次进行比较!
3.数组查找
基本查找:数组元素查表法(查询数组中的元素第一次在数组中出现的索引):从头查到尾
数组二分查找(折半查找)
思路:
1)定义最大索引和最小索引
2)计算出中间索引:
如果要查的元素和中间索引对应的元素相等,返回中间索引
如果不想等
大了,左边找
小了右边找
3)重写计算出中间索引:
大了:max = mid -1 ;
小了:min = mid+1 ;
4)继续回到(2)进行重新计算在查找!
4.数组快速查找
Arrays:sun公司提供的官方文档中的一个类:包含了数组排序以及数组搜索等等的一些方法!对数组操作的工具类
java.util包下
public static String toString(int[] a):将int类型的数组转换成字符串类型
public static void sort(int[] a)对指定的 int 型数组按数字升序进行排序。(该底层已经封装好了,
属于快速排序算法封装的一个sort方法)
public static int binarySearch(int[] a,int key):二分查找
以上是关于数组高级部分--排序,查找的主要内容,如果未能解决你的问题,请参考以下文章