排序——简单排序

 1 #include <stdio.h>
 2 int main()
 3 {
 4     int i,j,n,min,r[100];
 5     printf("enter total numbers\t");
 6     scanf("%d",&n);
 7     for(i=1;i<=n;i++)
 8     {
 9         printf("enter number %d\t",i);
10         scanf("%d",&r[i]);
11     }
12
13     for(i=1;i<=n-1;i++)
14     {
15         min=i;
16         for(j=i+1;j<=n;j++)
17             if(r[j]<r[min])
18                 min=j;
19
20         if(min!=j)
21         {
22             r[0]=r[min];
23             r[min]=r[i];
24             r[i]=r[0];
25         }
26     }
27     for(i=1;i<=n;i++)
28         printf("%d\t",r[i]);
29     return 0;
30 }
时间: 2024-10-19 12:19:01

排序——简单排序的相关文章

数据结构--排序--简单排序

1 /*插入排序--是基本排序里面性能比较好的(比较适合基本有序的排序) 2 *排序的思想:一个序列,前边是有序的,后边是无序的,拿出一个元素进行插入到已经有序 3 * 的部分(这里就涉及移动的操作)--先找到位置,再移动 4 *特点:一趟排序下来每个元素的位置可能不是固定的 5 *时间复杂度:O(N2) 6 *排序的稳定性:稳定的 7 *使用场景:数据基本有序的情况下 8 * */ 9 public class TestInsertSort { 10 11 public static void

简单排序

冒泡排序 选择排序 插入排序 时间复杂度 O(n^2) 冒泡排序è基本不用  过于简单比较次数(见下) 与 交换次数(平均为比较次数的一半) 均正比于N^2 选择排序è快于冒泡 交换时间级别大于比较时间级别选择该排序 比较次数(见下) 正比于N^2 交换次数N 插入排序 VS表插入排序 效率比较 插入排序>(略快于)选择排序>冒泡排序 插入排序 表插入排序 原理 简单排序之一 利用有序链表插入效率的比较为O(N)的特点 比较次数MAX (N^2-N)/2 N 比较次数AVG (N^2-N)/4

JavaScript 实现页面元素(ul-li)的简单排序

JavaScript 实现页面元素(ul-li)的简单排序 html页面: <input type="button" value="show" onclick="show()" /> <ul id="ul1"> <li>4</li> <li>3</li> <li>2</li> <li>1</li> </

简单排序方法

排序: 排序(Sort)是计算机程序设计中的一种重要操作,也是日常生活中经常遇到的问题.例如,字典中的单词是以字母的顺序排列,否则,使用起来非常困难.同样,存储在计算机中的数据的次序,对于处理这些数据的算法的速度和简便性而言,也具有非常深远的意义. 基本概念: 排序是把一个记录(在排序中把数据元素称为记录)集合或序列重新排列成按记录的某个数据项值递增(或递减)的序列. 下表是一个学生成绩表,其中某个学生记录包括学号.姓名及计算机文化基础.C 语言.数据结构等课程的成绩和总成绩等数据项.在排序时,

选择排序—简单选择排序(Simple Selection Sort)

基本思想: 在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换:然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止. 简单选择排序的示例: 操作方法: 第一趟,从n 个记录中找出关键码最小的记录与第一个记录交换: 第二趟,从第二个记录开始的n-1 个记录中再选出关键码最小的记录与第二个记录交换: 以此类推..... 第i 趟,则从第i 个记录开始的n-i+1 个记录中选出关键码最小的记录与

排序算法之简单排序算法

一.前言 其实排序对于前端工程师来说没有后端那么重要,不过理解排序的原理还是比较有用的.例如有些应用数据比较少量的就不需要用后台来排序,如果用php后端脚本等排序会增加后台的开销.放在前端岂不是更好,当然我们有一个前端的排序神器sort.当然也做了很多得优化,不过用sort排序还需要注意一点,sort默认不传参数时候的排序是按照字母顺序对数组中的元素进行排序,其实就是按照字符编码的顺序进行排序.        今天主要复习一下简单得排序,分别为冒泡排序.插入排序.选择排序,冒泡目前是我认为最简单

Java数据结构和算法之数组与简单排序

一.数组于简单排序 数组 数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法. 一维数组 一维数组(one‐dimensional array )实质上是相同类型变量列表.要创建一个数组,你必须首先定义数组变量所需的类型.通用的一维数组的声明格式是: type var‐name[ ]; 获得一个数组需要2步: 第一步,你必须定义变量所需的类型. 第二步,你必

选择排序—简单选择排序(Simple Selection Sort)原理以及Java实现

基本思想: 在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换:然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止. 简单选择排序的示例: 操作方法: 第一趟,从n 个记录中找出关键码最小的记录与第一个记录交换: 第二趟,从第二个记录开始的n-1 个记录中再选出关键码最小的记录与第二个记录交换: 以此类推..... 第i 趟,则从第i 个记录开始的n-i+1 个记录中选出关键码最小的记录与

UVA - 10905 - Children&#39;s Game (简单排序)

UVA - 10905 Children's Game Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu Submit Status Description 4thIIUCInter-University Programming Contest, 2005 A Children's Game Input: standard input Output: standard output Problems