排序
112358lo
这个作者很懒,什么都没留下…
展开
-
java中的排序的方法------冒泡排序
冒泡排序的思路: 比较相邻的两个数,如果顺序和指定的顺序相反那么就交换位子,每比较完一趟需要比较的个数-1: eg: 比较的趟数最多为n-1趟,最少为一趟(即数组的顺序和默认要求的排列顺序一致)。下面我们来根据冒牌排序的趟数来分析代码: 1)、每趟的比较次数都大于1次@Test public void bubble(){ int a[]={12...原创 2018-06-14 09:34:02 · 154 阅读 · 0 评论 -
java中的排序----快速排序
java中的排序----快速排序的思想:每一个数与后面的n个数进行比较。存在两个for循环第一个:遍历数组中的每一个数(除了最后一个数)第二个:遍历第一个循环遍历到的数后面的所有的元素。eg:手机排序public void selectSort1(int a[]) { for (int i = 0; i < a.length - 1; i++) { for (int j = i +...原创 2018-06-14 09:44:57 · 105 阅读 · 0 评论 -
java排序中的-----插入排序
插入排序的思想: 从数组的第二个数开始不断的和前面的数依次进行比较。需要备份被比较的元素。如果满足排序要求则continue,否则被比较过得元素的位置需要往后摞。最后空出来的位置放被比较的元素。其代码如下:public void insertSort1(int a[]) { for (int i = 0; i < a.length - 1; i++) { int te...原创 2018-06-14 09:53:12 · 102 阅读 · 0 评论 -
java排序中的插入排序的优化-----二分排序
二分排序的思想:1)、给定下界:low,给定上界:high,中:mid2)、将插入的数和mid位置的数组元素进行比较,如果比mid位置的大则low=mid+1,否则high=mid-13)、之后需要从插入数插入位置开始的数组元素全部往后摞一位。腾出hight+1存放插入数。public void insertSort2(int a[]){ for(int i=0;i<a.length-1...原创 2018-06-14 10:04:09 · 688 阅读 · 0 评论 -
java排序中的-----希尔排序
希尔排序的思想:原创 2018-06-14 10:23:45 · 133 阅读 · 0 评论 -
java排序----快速排序(数组越乱速度越快)
快速排序的思想:1)、将第一个数作为数轴,用i查找比数组大的数,用j查找比数轴小的数,当i和j查到第一个数的时候就进行交换将数轴和j位置的元素进行交换。2)、然后写一个递归函数调用排序函数就可以了。其排序代码为:public int quickSort(int a[],int p,int r){ int i=p; int j=r+1; int temp=a[p]; while(tr...原创 2018-06-14 20:10:30 · 1433 阅读 · 0 评论 -
java排序-----归并排序
归并排序思路:1)、进行归并排序的数列本身就是有序的2)、用数列1和数列2进行比较(这里是从小到大进行排列),小的数放入结果集中然后又进行比较3)归并和快速排序一样也使用了递归(递归是先分到里层,然后层层像外递归)///////////归并排序//////////////// public void partition2(int a[],int left,int right...原创 2018-06-14 20:37:55 · 212 阅读 · 0 评论