`
gg19861207
  • 浏览: 182825 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

几种排序算法的源玛

阅读更多
ArraySort.java源文件://该文件为基类文件,其他的排序算法类都继承自该类
package com.oristand;
import java.util.Random;
public class ArraySort {
int[] a;
int length;

public ArraySort(int maxsize){
a = new int[maxsize];
length = 0;
}

public void insert(int value){
a[length] = value;
length++;
}

public void swap(int first,int second){
int temp = a[first];
a[first] = a[second];
a[second] = temp;

}

public void display(){
for(int i=0;i<length;i++){
System.out.print(a[i]+" ");
}
}
public static void main(String[] args) {
int maxsize = 5;

ArraySort as = new ArraySort(maxsize);


as.insert(1);
as.insert(2);
as.insert(3);

as.display();
}
}
冒泡排序文件:
package com.oristand;
public class BubbleSort extends ArraySort{
public BubbleSort(int maxsize){
super(maxsize);
}

public void sort(){
for(int end=length-1;end>0;end--)
for(int start=0;start<end;start++)
if(a[start+1]<a[start])
swap(start,start+1);
}
public static void main(String[] args) {
int maxsize = 5;
BubbleSort bs = new BubbleSort(maxsize);
bs.insert(54);
bs.insert(38);
bs.insert(72);
bs.insert(10);
bs.insert(8);
bs.sort();
bs.display();
}
}
选择排序文件:
package com.oristand;
public class SelectSort extends ArraySort {
public SelectSort(int maxsize){
super(maxsize);
}

public void sort(){
int in,min,start;
for(in=0;in<length-2;in++){
for(min=in,start=min+1;start<=length-1;start++)
if(a[min]>a[start]) min=start;
swap(in,min);
}
}
public static void main(String[] args) {
int maxsize =10;
BubbleSort bs = new BubbleSort(maxsize);
bs.initByRandrom();
bs.display();

bs.sort();
bs.display();
}

}
分享到:
评论

相关推荐

    几种常见排序算法代码

    几种常见的排序算法是编程领域中基础且重要的知识点,它们各自有不同的特点和适用场景。本文将详细介绍这些算法,并分析其效率。 一、冒泡排序 冒泡排序是一种简单的排序算法,通过不断交换相邻的两个元素来逐步...

    排序算法源码

    以下是对压缩包文件中包含的几种排序算法源码的详细解释: 1. 插入排序(InsertionSort.c): 插入排序是一种简单的直观算法,适用于小规模或部分有序的数据集。它的工作原理类似于我们日常生活中的整理扑克牌。首先...

    几种经典的排序算法,源代码

    总的来说,选择哪种排序算法取决于数据的特性和需求。对于小规模数据,直接插入或选择排序可能更合适,而大规模数据或对性能有较高要求时,快速排序和堆排序通常是更好的选择。如果数据基本有序,直接插入和冒泡排序...

    C排序源代码设计几种排序算法

    该程序包含了几种算法,读者可对此进行试验

    几种常用的排序算法源码

    本文将详细讲解标题中提到的几种排序算法:插入排序、堆排序,以及快速排序和计数排序,这些都是在实际编程中经常使用的算法。 1. **插入排序**(Insertion Sort) 插入排序是一种简单直观的排序算法,它的工作...

    快速排序算法 源代码

    在这个名为"快速排序算法 源代码"的资源中,包含了一个名为`QuickSortOriginal.cpp`的C++源代码文件,它实现了一个经典的快速排序算法。C++是一种通用的、面向对象的编程语言,因其高效性、灵活性和强大的模板系统而...

    几种常见排序算法实例

    本文将详细解析标题中提及的五种排序算法:位与、选择、冒泡、插入以及qsort,并结合在VC6.0环境下进行编译实践的情况。 1. **位与排序**: 位与操作符(`&`)在某些特定场景下可用于排序,例如在整数数组中,通过...

    几种排序代码

    (1)直接插入排序算法验证。 (2)快速排序算法验证。 (3)直接选择排序算法验证。 几种简单的排序算法代码

    几种排序算法的比较源码

    本资源提供了几种最常见的排序算法的源代码,便于学习和比较。以下是对这些算法的详细讲解: 1. 冒泡排序(Bubble Sort): 冒泡排序是最基础的排序方法,通过不断交换相邻的逆序元素来逐步实现排序。它的时间...

    八大经典排序算法总结和源代码

    八大经典排序算法总结和源代码 在计算机科学中,排序算法是最基本也是最重要的算法之一。排序算法的性能直接影响到整个系统的性能。今天,我们将总结八大经典排序算法,并提供C++实现的源代码。 一、稳定排序和...

    几种简单算法的C语言源代码和演示页面(插入排序,冒泡排序等).zip

    在本压缩包中,我们主要关注的是几种简单的算法,它们都是用C语言编写的,并且配合有HTML动画演示,帮助理解和学习。以下是这些算法的详细解释: 1. 插入排序(Insertion Sort) 插入排序是一种基础且直观的排序...

    c语言实现的各种排序算法效率分析与比较及源代码

    各种排序算法效率分析比较及源代码 C语言实现 各种排序包括: 直接插入排序,折半插入排序,2—路插入排序和表插入排序;希尔排序和链式基数排序;起泡排序,快速排序,归并排序;简单选择排序,树形选择排序和堆...

    Java常用排序算法源码

    以下是对Java中几种常见排序算法的详细解析: 1. 冒泡排序: 冒泡排序是一种简单直观的排序算法,通过不断交换相邻的不正确顺序元素来达到排序的目的。它的时间复杂度为O(n^2),在处理大量数据时效率较低。尽管效率...

    用C语言实现常用排序算法

    源代码中包含了这六种排序算法的实现,每个算法都有相应的函数,用于接收数组和其长度作为参数,返回排序后的数组。此外,还包含时间统计和比较/移动次数统计的辅助函数,以记录算法执行的过程。 六、性能分析 在...

    数据结构各种排序算法的比较 源代码

    本文将详细讨论标题中提到的几种排序算法:快速排序、直接插入排序、希尔排序、堆排序、归并排序、简单选择排序以及冒泡排序,并通过它们在处理3000个数时的表现来对比分析其性能。 1. **快速排序**:由C.A.R. ...

    Java直接插入排序算法源码

    直接插入排序是一种基础且简单的排序算法,它的工作原理类似于我们日常生活中的整理扑克牌。...通过阅读和实践这个源代码,你可以深入理解排序算法的基础工作原理,并为进一步学习更复杂的排序算法打下坚实的基础。

    Verilog/C++实现排序算法:Verilog/C++实现排序算法:冒泡排序、选择排序、并行全比较排序、串行全比较排序

    在`array_sort`这个项目中,可能包含了实现这些排序算法的C++源代码文件和Verilog模块。通过阅读和分析这些代码,可以深入理解各种排序算法的内部工作原理,以及如何在不同层面(软件和硬件)实现它们。同时,这也为...

    C#四种排序算法 算法最牛逼

    下面将详细阐述这四种排序算法的原理、实现方式以及它们各自的优缺点。 1. 冒泡排序(Bubble Sort) 冒泡排序是最简单的排序算法之一,通过不断交换相邻的两个不正确顺序的元素,逐步将最大的元素“冒”到数组的...

    C语言几种排序算法实现.zip

    本资源"**C语言几种排序算法实现.zip**"可能包含了一系列用C语言编写的经典排序算法,如冒泡排序、插入排序、选择排序、快速排序、归并排序和堆排序等。下面将对这些常见的排序算法进行详细介绍。 1. **冒泡排序...

    希尔排序算法源代码

    希尔排序(Shell Sort)是一种基于插入排序的快速排序算法,由Donald Shell于1959年提出。它的主要思想是将待排序的元素按照一定的间隔分组,对每组进行插入排序,然后逐渐减小间隔,直到间隔为1,此时整个序列视为...

Global site tag (gtag.js) - Google Analytics