![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 75
雨落千木
我是一个爱好编程的菜鸟!
展开
-
排序算法java实现冒泡排序
public class BubbleSort {//冒泡排序//基本思想:两个数比较大小,较大的数下沉,较小的数冒起来//过程:1.比较相邻的两个数,如果第二个数小就交换位置//2.从后向前两两比较,一直到比较最前面的两个数据。最终最小数被交换到起始的位置,//这样第一个最小数的位置就排好了//继续重复上述过程,依次将第2,3,...n-1个最小数排好位置//...原创 2016-02-01 17:16:20 · 104 阅读 · 0 评论 -
排序算法java实现选择排序
public class SelectionSort {//选择排序//基本思想: //在长度为N的无序数组中,第一次遍历n-1个数,找到最小的数值与第一个元素交换//第二次遍历n-2个数,找到最小的数值与第二个元素交换,//...//第n-1次遍历,找到最小的数值与第n-1个元素交换,排序完成。 //平均时间复杂度为:O(n^2)public s...2016-02-01 17:17:10 · 133 阅读 · 0 评论 -
排序算法java实现插入排序
public class InsertSort {//插入排序//基本思想://在要排序的一组数中,假定前n-1个数已经排好序,//现在将第n个数插到前面的有序数列中,使得这n个数也是排好序的。//如此反复循环,直到全部排好序。过程: //平均时间复杂度:O(n^2)public static void main(String[] args) {...原创 2016-02-02 09:04:31 · 154 阅读 · 0 评论 -
排序算法java实现希尔排序
public class ShellSort {//希尔排序://基本思想://在要排序的一组数中,根据某一增量分为若干子序列,并对子序列分别进行插入排序。//然后逐渐将增量减小,重复上述过程。//直至增量为1,此时数据序列基本有序,最后进行插入排序。//过程 //平均时间复杂度:O(n^1.5) public static void main(S...原创 2016-02-02 09:04:40 · 131 阅读 · 0 评论 -
排序算法java实现快速排序
public class QuickSort {//快速排序://基本思想:(分治)//先从数组中取出一个数作为key值;//将比这个数小的数全部放在它的左边,//大于或等于它的数全部放在它的右边,//对左右两个小数组重复上述步骤,直到各个区间只有1个数 //辅助理解:(挖坑填数)//初始时:i=0;j=8;key=6//由于已经将a[0]中的数保存...2016-02-02 10:45:22 · 174 阅读 · 0 评论 -
排序算法java实现归并排序
public class MergeSort {//归并排序//基本思想:归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法的一个非常典型的应用。//首先考虑下如何将两个有序数列合并://比较两个数列的第一个数,谁小就先去谁,取了后就在对应数列中删除这个数,然后再进行比较,//如果数列为空,那么将另一个数列的数据依次取出即可。 //解决了两个数...2016-02-02 11:24:58 · 88 阅读 · 0 评论 -
对String str=“234561121”排序
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List; public class SortTest {public static void main(String[] args) {String str ...原创 2016-02-24 15:10:34 · 152 阅读 · 0 评论 -
排序算法java实现堆排序
public class HeapSort {//堆排序://基本思想://首先要了解堆这种数据结构://堆是实质上是一个满足如下条件的完全二叉树:树中任意非叶节点的关键字均不大于(或不小于)其左右孩子节点的关键字,即://给定关键字数列:T1,T2,...,Tn,//当且仅当数列满足如下性质:(1)Ti<=T2i且Ti<=T2i+1或者(2)Ti&g...原创 2016-02-24 15:10:49 · 113 阅读 · 0 评论