`
tang&qiang
  • 浏览: 25983 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

3: 三种 数字排序的方法

J# 
阅读更多

第一种常用的方法
/**
*
* @author Administrator
*
*/

public class P排序1 {   
   public static void main(String args[]){  
        int []a={1,15,24,26,58,45,14,15,14,74};  
        int j,temp;  
        for(int i=0;i<a.length;i++){  
           int m = i;  
            for(j=i+1;j<a.length;j++){  
                if(a[j]<a[m]){  
                    m=j;  
                }  
         }  
            if(i!=m){  
                temp=a[i];  
               a[i]=a[m];  
                a[m]=temp;  
            }  
        }  
        for(int i=0;i<a.length;i++){  
            System.out.print(a[i]+" ");  
        }  
    }  



第二种
/**
  *
  * @author Administrator
  *
  */

public class P排序2  {
public static void main(String args[]){
int[] a = {15,24,25,68,12,10,45,18,27};
int temp;
for(int k=a.length/2;k>0;k/=2){
for(int i=k;i<a.length;i++){
for(int j=i;j>=k;j-=k){
if(a[j-k]>a[j]){
temp=a[j-k];
a[j-k]=a[j];
a[j]=temp;
}
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
}
}


第三种

public class P排序3 {
static void sort(int[]a,int dk){
int i,j,temp;
for(i=dk;i<a.length;i++){
if(a[i]<a[i-dk]){
temp=a[i];
a[i]=a[i-dk];
for(j=i;j>0&&temp<a[j-1];j=j-dk){
a[j]=a[j-1];
}
a[j]=temp;
}
}
}
public static void main(String args[]){
int[]a={15,24,25,68,12,10,45,18,27};
int w=1;
    while(w<=a.length/5){
sort(a,w);
w=w*5+1;
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
}
}
分享到:
评论

相关推荐

    ListView排序,解决了数字排序

    这个类需要实现 IComparer 接口,并且需要三个构造函数参数:排序列、排序顺序和是否是数字排序。 在比较两个 ListViewItem 时,我们需要根据排序列和排序顺序来确定哪个项应该在前面。如果是数字排序,我们需要将 ...

    编制一维数组排序程序。数组大小n用全局变量定义,数组数据从文本文件中读入或随机生成。包含冒泡排序、选择排序、插入排序三种排序方法。程序能够选择使用任何一种方法排序。

    为了优化和比较不同排序算法的效率,程序可能还包含了性能分析功能,如计时器来测量每种排序方法所需的时间,或者使用特定的性能指标如比较次数和交换次数。 总结来说,这个项目旨在培养编程者对基本数据结构、文件...

    java中文排序,数字字母汉字排序

    一种常见的方式是使用第三方库,如`pinyin4j`,它可以帮助我们将中文字符转换为拼音。 以下是使用`pinyin4j`库实现的示例代码: ```java import net.sourceforge.pinyin4j.PinyinHelper; import ...

    C语言几种排序代码

    本主题聚焦于C语言实现的排序算法,其中包括了十种不同的排序方法,每一种都有其独特的应用背景和效率特点。下面我们将详细探讨这些排序算法的原理、步骤以及它们在C语言中的实现。 1. **冒泡排序**:这是一种简单...

    java源码数字字符串排序

    在Java中,对数字字符串排序通常有两种主要的方法:直接比较字符串和转换为整数后再比较。第一种方法直接使用`compareTo()`或`compareToIgnoreCase()`方法,但这可能会在处理大数字时效率较低。第二种方法是将字符串...

    数字字母中文排序

    根据题目描述,我们需要设计一个能够处理数字、字母、中文字符混合的排序方法。 ##### 1. 排序方法的核心思想 - 首先将输入的字符串转换成字符数组。 - 然后逐个比较两个字符串的每一个字符。 - 使用`determineType...

    数据结构常见排序的几种方法

    本程序涵盖了数据结构中常见的几种排序方法,下面将对这些排序算法进行详细介绍。 1. 冒泡排序(Bubble Sort) 冒泡排序是最简单的排序算法之一。它通过不断比较相邻元素并交换位置来实现排序,重复这一过程,直到...

    VB 三个数的排序

    在实际编程中,当处理大量数据时,VB提供了更为高效的数组排序方法,如使用Array.Sort函数。但需要注意的是,Array.Sort只适用于一维数组,并且是针对.NET Framework的,不是原始的VB6。在VB6或早期版本中,你需要...

    javascript 的几种排序方法

    这篇文章将详细介绍JavaScript中几种常见的排序方法,帮助你更好地理解和运用这些技术。 首先,最基本的排序方法是`Array.prototype.sort()`。这个内置函数可以接受一个比较函数作为参数,用于自定义排序规则。例如...

    题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

    - 这个问题的解决方案的时间复杂度是O(3^n),因为有3个位置,每个位置有4种选择,所以总共有4的3次方种组合。空间复杂度是O(1),因为只需要常数级别的变量空间。 8. **软件工程基础**: - 这个问题的解决方案体现...

    3个数从小到大排序

    ### 3个数从小到大排序的C语言实现 #### 背景介绍 在计算机科学与编程领域中,排序算法是一种非常基础且重要的技术。它不仅被广泛应用于各种数据结构处理,也是算法学习和面试考察的重点之一。本文将通过一个具体的...

    三种线性排序算法Java实现

    学习和理解这三种排序算法,不仅可以提高编程能力,也有助于在面对不同问题时选择合适的排序方法,提升算法效率。在实际项目中,可以根据数据特点灵活运用这些算法,优化程序性能。通过阅读并理解这些Java源代码,你...

    三种排序算法主要过程图示

    今天,我们将介绍三种常见的排序算法:计数排序、基数排序和桶排序。 计数排序 计数排序是一种非比较排序算法,通过统计每个数字出现的次数来实现排序。其主要过程可以分为以下几个步骤: 1. 找到待排序数组中的...

    九种经典排序算法的实现

    基数排序是按照数字的位数从低位到高位进行排序,适合处理大量数据且位数固定的整数排序。它可以做到线性时间复杂度,但需要额外的空间。 8. **简单选择排序(Simple Selection Sort)**: 简单选择排序的基本...

    C语言排序,培训例程(包含:冒泡排序、快速排序、插值排序)

    程序的交互设计可以让用户选择想要使用的排序方法,然后输出排序后的结果。 在实现这些排序算法时,需要注意以下几点: 1. **内存管理**:确保正确分配和释放内存,避免内存泄漏。 2. **边界条件**:处理空数组或...

    oracle数据库中汉字排序方法

    为了确保排序结果符合预期并能够满足实际业务需求,我们需要掌握几种有效的汉字排序方法。本文将详细介绍如何在Oracle数据库中实现汉字排序,并通过具体的示例来帮助理解。 #### 一、背景介绍 在日常工作中,我们...

    排序及基本算法

    **内部排序与外部排序**:根据待排序数据是否完全存放在内存中,排序方法可分为内部排序和外部排序。内部排序适用于数据量较小的情况,所有数据可以在内存中进行操作。外部排序则用于处理大规模数据集,数据无法一次...

    数据结构:11 第9章 排序new.ppt

    第九章主要探讨了内部排序的各种方法,包括插入排序、交换排序、选择排序、归并排序以及基数排序。 1. **概述** - **排序**:是指将一组无序的数据按照特定的规则进行有序排列的过程。 - **目的**:主要为了提高...

    十种排序算法介绍十种排序算法介绍

    - **原理**: 希尔排序是对直接插入排序的一种改进方法。它改变了直接插入排序中元素移动的幅度,通过分组进行插入排序,逐步缩小增量,最终达到完全有序的状态。 - **时间复杂度**: 平均情况介于O(n)到O(n^2)之间...

    完整详细版 C语言版 数据结构与算法课程 第3章 排序算法基础(共46页).ppt

    - O(n log n):先进的排序方法,如快速排序、归并排序和堆排序。 - O(n):基数排序,不涉及元素间的比较。 ### 具体排序算法 1. **直接插入排序**: - 在每一轮中,将当前元素插入到已排序部分的正确位置,通过...

Global site tag (gtag.js) - Google Analytics