`
阅读更多
<!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>-->   1 /**
  2  * 功能:完成了对所给数组进行排序;
  3  * 
  4  * @author Administrator
  5  */
  6 
  7 public class BubbleSort
  8 {
  9     public BubbleSort()
 10     {
 11 
 12     }
 13 
 14     public static void main ( String args[] )
 15     {
 16         int data[] = { 6356981224 };
 17 
 18         int n = data.length;
 19 
 20         // bubblesort(data, n);//冒泡排序
 21         //selectionSort(data, n);//选择排序
 22         insertionSort(data,n);//插入排序
 23         for (int i = 0; i < n; i++)
 24         {
 25             System.out.println(data[i]);
 26             
 27         }
 28         
 29     }
 30 
 31     public static void swap ( int data[] , int i , int j )
 32     {
 33         int temp;
 34         temp = data[i];
 35         data[i] = data[j];
 36         data[j] = temp;
 37     }
 38 
 39     /*
 40      * 冒泡排序
 41      */
 42     public static void bubblesort ( int data[] , int n )
 43     {
 44         int numsorted = 0;
 45         int index;
 46         while (numsorted < n)
 47         {
 48             for (index = 1; index < n - numsorted; index++)
 49             {
 50                 if (data[index - 1> data[index])
 51                     swap(data, index - 1, index);
 52 
 53             }
 54             numsorted++;
 55 
 56         }
 57 
 58     }
 59 
 60     /*
 61      * 选择排序
 62      */
 63     public static void selectionSort ( int data[] , int n )
 64     {
 65         int numUnsorted = n;
 66         int index;
 67         int max;
 68         while (numUnsorted > 0)
 69         {
 70             max = 0;
 71             for (index = 1; index < numUnsorted; index++)
 72             {
 73                 if (data[max] < data[index])
 74                     max = index;
 75 
 76             }
 77             swap(data, max, numUnsorted - 1);
 78             numUnsorted--;
 79 
 80         }
 81     }
 82 
 83     /*
 84      * 插入排序
 85      */
 86     public static void insertionSort ( int data[] , int n )
 87     {
 88         int numSorted = 1;
 89         int index;
 90         while (numSorted < n)
 91         {
 92             int temp = data[numSorted];
 93             for (index = numSorted; index > 0; index--)
 94             {
 95                 if (temp < data[index - 1])
 96                 {
 97                     data[index] = data[index - 1];
 98                 } else
 99                 {
100                     break;
101                 }
102             }
103             data[index] = temp;
104             numSorted++;
105         }
106     }
107 
108 }
109 

分享到:
评论

相关推荐

    java实现数据结构常见排序算法及详解

    ### Java 实现数据结构常见排序算法及详解 #### 排序算法概述 排序算法是计算机科学中的基础概念之一,主要用于将一系列数据按照特定规则进行排列。根据数据处理方式的不同,排序算法大致分为两大类:比较排序与非...

    C语言常见排序算法的实现

    这里我们将深入探讨在C语言中实现的六种常见排序算法:插入排序、Shell排序、堆排序、冒泡排序、快速排序以及归并排序。 1. **插入排序**:插入排序是一种简单的排序算法,它的工作原理类似于我们日常生活中的整理...

    七种常见排序算法动态演示图.rar

    以下是对七种常见排序算法的详细解释: 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,其工作原理是通过不断地交换相邻的逆序元素,使得最大的元素逐渐“冒”到数组的末尾。该过程会重复进行,直到所有元素都...

    常见排序算法汇总

    交换排序是基于比较对象之间大小关系,通过交换元素位置来达到排序目的的一种排序算法。其中,冒泡排序是最基础的交换排序,它通过相邻元素间的比较和交换,逐步将较大的元素推向序列末尾。优化后的双向冒泡排序能...

    常见排序算法的实现与性能比较

    ### 常见排序算法的实现与性能比较 #### 实验背景及目的 排序算法是计算机科学中的一个重要组成部分,广泛应用于各种数据处理场景之中。通过本实验,我们旨在实现六种常见的排序算法——合并排序、插入排序、希尔...

    Python实现常见排序算法详解

    使用场景及目标:通过实际代码理解和掌握常见排序算法的工作原理,优化数据处理效率。适用于初学者学习算法基础知识,以及开发者在实际项目中选择合适的排序算法。 其他说明:文章内容结构清晰,每个算法的实现代码...

    C语言常见排序算法及比较

    ### C语言常见排序算法及比较 #### 插入排序(Insertion Sort) **基本思想**: 插入排序是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置...

    各常见排序算法实践

    以下是对标题“各常见排序算法实践”及描述中涉及的排序算法的详细说明: 1. **简单选择排序**: 简单选择排序是一种基于比较的排序算法,其基本思想是在未排序序列中找到最小(或最大)元素,存放到排序序列的...

    常见排序算法的实现与性能比较JAVA版

    常见排序算法的实现与性能比较JAVA 问题描述:实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法 实验要求: A. 在随机产生的空间大小分别为 N = 10, 1000,10000,100000 的排序样本(取值为[0...

    八种常见排序算法总结(转)

    "八种常见排序算法总结" 直接插入排序是一种简单的排序算法,它的思想是每次选择一个元素 K 插入到之前已排好序的部分 A[1…i]中,插入过程中 K 依次由后向前与 A[1…i]中的元素进行比较。若发现 A[x]&gt;=K,则将 K ...

    Java常见排序算法源码集.rar

    这个名为"Java常见排序算法源码集.rar"的压缩文件显然包含了多种常用的排序算法的Java实现,对于初学者来说,这是一个非常宝贵的资源,可以深入理解各种算法的工作原理。 首先,我们来逐一探讨这些常见的排序算法:...

    五种常见排序法的比较

    五种常见排序法的比较 归并排序 快速排序 选择排序 插入排序 冒泡排序

    中科大算法导论课程实验 常见排序算法的实现与性能比较 报告

    报告的标题是“中科大算法导论课程实验 常见排序算法的实现与性能比较”,指出了本实验报告的重点在于实现并比较各类常见排序算法。 #### 描述解读 描述部分指明了实验的目的和范围,要求对六种排序算法——合并...

    常见排序算法分享:排序算法.zip

    在"排序算法.zip"这个压缩包中,很可能是包含了关于各种常见排序算法的源代码、示例或教程。 1. 冒泡排序(Bubble Sort): 冒泡排序是一种简单的交换排序方法,通过重复遍历数组,比较相邻元素并交换位置,使得较...

    常见排序算法.zip

    这个压缩包“常见排序算法.zip”包含了一份名为“常见排序算法.pdf”的文档,很可能详细介绍了多种常见的排序算法及其原理。下面,我们将深入探讨这些排序算法的核心概念、工作原理以及它们的应用场景。 1. 冒泡...

    C#实现的常见排序算法(博客的Demo)

    本篇文章将详细探讨C#实现的四种常见排序算法:冒泡排序、选择排序、快速排序和插入排序。 1. **冒泡排序**: 冒泡排序是一种简单的交换排序,通过不断比较相邻元素并交换位置,使较大的元素逐渐“浮”到数组的...

    Java数据挖掘常见18种算法实现和10种常见排序算法以及其他相关经典DM算法集合.zip

    Java数据挖掘18大算法实现和10大常见排序算法以及其他相关经典DM算法集合。 18大数据挖掘的经典算法以及代码实现,涉及到了决策分类,聚类,链接挖掘,关联挖掘,模式挖掘等等方面,后面都是相应算法的文章,希望能够...

    Java常见排序算法

    这篇博客“Java常见排序算法”深入探讨了如何在Java中实现不同的排序方法,这对于我们理解和优化程序性能至关重要。以下是对这些常见排序算法的详细介绍: 1. **冒泡排序** (Bubble Sort): 冒泡排序是最基础的...

    Python常见排序算法汇总共2页.pdf.zip

    这个名为"Python常见排序算法汇总共2页.pdf.zip"的压缩包文件,很可能是包含了一份关于Python中常用排序算法的总结文档,虽然描述中并未提供详细内容,但我们可以推测它可能涵盖了以下常见的Python排序算法: ...

Global site tag (gtag.js) - Google Analytics