冒泡排序算法的JAVA实现

package Utils.Sort;

/**

*@author Linyco

*利用冒泡排序法对数组排序,数组中元素必须实现了Comparable接口。

*/

public class BubbleSort implements SortStrategy

{

       /**

       *对数组obj中的元素以冒泡排序算法进行排序

       */

       public void sort(Comparable[] obj)

       {

              if (obj == null)

              {

                     throw new NullPointerException("The argument can not be null!");

              }

 

              Comparable tmp;

 

              for (int i = 0 ;i < obj.length ;i++ )

              {

                     //切记,每次都要从第一个开始比。最后的不用再比。

                     for (int j = 0 ;j < obj.length - i - 1 ;j++ )

                     {

                            //对邻接的元素进行比较,如果后面的小,就交换

                            if (obj[j].compareTo(obj[j + 1]) > 0)

                            {

                                   tmp = obj[j];

                                   obj[j] = obj[j + 1];

                                   obj[j + 1] = tmp;

                            }

                     }

              }

       }

}

其余的几个类的链接分别是:

插入排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498735.aspx

冒泡排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498736.aspx

选择排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498742.aspx

归并排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498746.aspx

希尔排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498764.aspx

快速排序:http://blog.csdn.net/Linyco/archive/2005/10/10/498759.aspx

你可能感兴趣的:(JAVA,数据结构)