`
祖祖cool
  • 浏览: 51267 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

自己写的一个插入排序和冒泡排序例子

阅读更多
自己写的一个插入排序和冒泡排序例子


插入排序:
public class InsertSort implements SortUtil.Sort{
     public void sort(int[] data) {
        int temp;
        for(int i=1;i<data.length;i++){
            for(int j=i;(j>0)&&(data[j]<data[j-1]);j--){
                SortUtil.swap(data,j,j-1);
            }
        }       
    }
}


冒泡排序:
public class BubbleSort implements SortUtil.Sort{
     public void sort(int[] data) {
        int temp;
        for(int i=0;i<data.length;i++){
            for(int j=data.length-1;j>i;j--){
                if(data[j]<data[j-1]){
                    SortUtil.swap(data,j,j-1);
                }
            }
        }
    }
}
4
3
分享到:
评论
2 楼 a477996 2011-11-21  
qlzzhe001 写道
冒泡效果好点

请教为什么冒泡好点?
1 楼 qlzzhe001 2011-11-21  
冒泡效果好点

相关推荐

    11丨排序(上):为什么插入排序比冒泡排序更受欢迎?1

    总的来说,虽然插入排序和冒泡排序的时间复杂度相同,但由于插入排序在最好情况下的优秀表现、较低的比较和移动次数以及在实际软件开发中的高效性,使得它更受青睐。而稳定性则是评价排序算法是否适用于特定场景的...

    三种冒泡排序算法的例子

    三种冒泡排序算法的例子,比较区别与联系!

    冒泡排序和生成随机数

    以下是一个C语言实现冒泡排序的简单示例(以冒泡排序.txt文件为例): ```c #include void bubbleSort(int arr[], int n) { for (int i = 0; i ; i++) { // 外层循环控制遍历次数 for (int j = 0; j ; j++) { /...

    选择、冒泡、插入式排序

    在本文中,我们将深入探讨三种经典的排序算法:选择排序、冒泡排序和插入排序。这些算法是理解更复杂排序算法的基础,并且经常在初学者的教学中被用作例子。 **选择排序(Selection Sort)** 选择排序是一种简单...

    10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.zip

    10个数据结构课程设计例子 查找.c 二叉排序树.c 二叉树层次遍历.c 二叉树非递归遍历.c 二叉树建立.c 快速排序.c 括号匹配.c 冒泡排序.c 直接插入排序.c 直接选择排序.c 10个数据结构课程设计例子 查找.c 二叉排序树...

    C语言编程实现10个数据结构课程设计实例-二叉树建立遍历冒泡排序快速排序等.zip

    10个数据结构课程设计例子 查找.c 二叉排序树.c 二叉树层次遍历.c 二叉树非递归遍历.c 二叉树建立.c 快速排序.c 括号匹配.c 冒泡排序.c 直接插入排序.c 直接选择排序.c 10个数据结构课程设计例子 查找.c 二叉排序树....

    Java冒泡、选择、插入算法例子.zip

    这里我们主要探讨的是冒泡排序、选择排序和插入排序这三种经典算法,它们都是基于比较来实现数组或列表的有序排列。下面我们将详细解释这三种算法的工作原理及其在实际应用中的特点。 **冒泡排序**: 冒泡排序是一...

    各种排序的介绍和例子

    选取一个基准值,将数组分为两部分,一部分的所有元素都比基准小,另一部分的元素都比基准大,然后再对这两部分递归地进行快速排序。`排序4.txt`中可能会详细解释这个过程。 归并排序也是一种分治算法,它将数组...

    随机数排序_20个随机数_数组排序_源码

    有许多不同的排序算法,如冒泡排序、插入排序、选择排序、快速排序、归并排序等。在这个场景中,我们可能使用任何一种合适的排序算法。例如,简单的排序算法如冒泡排序易于理解和实现,而更高效的算法如快速排序或...

    多种排序法的例子及之间的比较

    总结来说,希尔排序在效率上优于冒泡排序和插入排序,而冒泡排序和插入排序则在稳定性上有其优势。了解这些排序算法的不同特点有助于在实际问题中选择最适合的排序方法。在编程实践中,除了理解这些基本算法,还应...

    java各种数组排序(插入,交换,选择,归类,基数排序).pdf

    在直接插入排序中,每次将一个待排序的元素插入到已经排序好的序列中的适当位置。折半插入排序则是通过二分查找来确定插入位置,提高了效率。希尔排序则是通过设置间隔序列,减少元素移动次数,从而提高整体效率。 ...

    用链表做一个拥有查找、插入、删除、排序的功能程序

    - **排序**:链表排序可以使用各种算法,如冒泡排序、选择排序、插入排序等。在这个例子中,可能使用了选择排序。 3. **程序流程**: - **创建链表**:从数组中读取元素,创建动态内存分配的节点,并将它们链接在...

    数据结构 链表创建、插入、删除排序等

    链表的排序可以通过各种算法实现,如冒泡排序、选择排序、插入排序等。这里我们以简单的插入排序为例: ```cpp void sortList(Node* &head) { if (head == NULL || head-&gt;next == NULL) return; // 如果链表为空或...

    数据结构(c#版)各种排序算法例子

    在这个“数据结构(C#版)各种排序算法例子”中,我们将深入探讨几种经典的排序算法,包括插入排序、带哨兵的插入排序、希尔排序、选择排序和冒泡排序。 1. 插入排序:插入排序是一种简单直观的排序算法,它的工作...

    排序法集锦,内含有快排、冒泡、插入排序、merge等多种排序法,适合算法学习者

    内含有快排、冒泡、插入排序、merge等多种排序法的实现,并附有测试例子,适合算法学习者

    将一个数组的所有元素排序后输出

    常见的排序算法包括冒泡排序、选择排序、插入排序、归并排序、快速排序等。 在我们的例子中,我们将使用冒泡排序算法来实现对数组的排序。冒泡排序算法的基本思想是:比较相邻的两个元素,如果它们的顺序错误,就将...

    毕业答辩-10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.rar

    在"毕业答辩-10个数据结构课程设计实例二叉树建立遍历冒泡排序快速排序等.rar"这个压缩包中,包含了多个关键的数据结构和算法实践案例,对于学习者来说,它们提供了宝贵的实践经验。 首先,我们要关注的是“二叉树...

    PHP常用排序算法实例小结【基本排序,冒泡排序,快速排序,插入排序】

    以上四种排序算法各有特点,冒泡排序和插入排序简单但效率较低,适合小规模数据排序;快速排序则在平均情况下有较高的效率,但最坏情况下性能会退化到O(n^2)。在实际应用中,可以根据数据规模和性能需求选择合适的...

    C语言 十个数降序再插一个数

    在C语言中,排序是编程的基本操作之一,而插入排序是一种简单直观的排序算法,它的工作原理是通过构造一个有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。本示例将介绍如何在已降序...

    各种排序算法及java例子

    本资源包包含了多种经典的排序算法,并提供了Java语言的实现示例,包括插入排序、堆排序、冒泡排序、选择排序、归并排序和快速排序。下面将详细阐述这些排序算法的原理、特点以及Java实现。 1. 插入排序(Insertion...

Global site tag (gtag.js) - Google Analytics