02331_数据结构_第7章_排序

7.3交换排序

7.3.1冒泡排序

 1 #include<stdio.h>
 2
 3 void sort(int * a, int len)
 4 {
 5     int i, j, t;
 6     for (i = 0;i < len - 1;++i)
 7     {
 8         for (j = 0;j < len - 1 - i;++j)
 9         {
10             if (a[j] > a[j + 1])        /* >表示升序 <表示降序 */
11             {
12                 t = a[j];
13                 a[j] = a[j + 1];
14                 a[j + 1] = t;
15             }
16         }
17     }
18 }
19
20 main()
21 {
22     int a[6] = { 10,2,8,-8,11,0 };
23     int i = 0;
24
25     sort(a, 6);
26
27     for (i = 0;i < 6;++i)
28     {
29         printf("%d ", a[i]);
30     }
31     printf("\n");
32 }

123

时间: 2025-01-16 11:22:27

02331_数据结构_第7章_排序的相关文章

ArcGIS for Desktop入门教程_第七章_使用ArcGIS进行空间分析 - ArcGIS知乎-新一代ArcGIS问答社区

原文:ArcGIS for Desktop入门教程_第七章_使用ArcGIS进行空间分析 - ArcGIS知乎-新一代ArcGIS问答社区 1 使用ArcGIS进行空间分析 1.1 GIS分析基础 GIS的六大功能是数据获取.存储.查询.分析.表达.输出.在前面的内容里已经介绍了使用ArcGIS进行数据获取.存储.查询.表达和输出的过程,本章将介绍如何在ArcGIS中进行地理分析.分析是GIS的核心和灵魂,是GIS区别于一般的信息系统.CAD或者电子地图系统的主要标志之一. GIS分析,就是研究

ArcGIS for Desktop入门教程_第六章_用ArcMap制作地图 - ArcGIS知乎-新一代ArcGIS问答社区

原文:ArcGIS for Desktop入门教程_第六章_用ArcMap制作地图 - ArcGIS知乎-新一代ArcGIS问答社区 1 用ArcMap制作地图 作为ArcGIS for Desktop的组成部分之一,ArcMap用于数据的浏览.编辑.显示.查询.地图排版等.ArcMap和ArcCatalog一起构成了完整的数据处理与管理分析的功能.在前一章中已经介绍了ArcCatalog的使用,本章中将介绍ArcMap的使用.本章的例子依然使用第4章里的小区平面图示例,但是将从原理的角度做更加

ArcGIS for Desktop入门教程_第四章_入门案例分析 - ArcGIS知乎-新一代ArcGIS问答社区

原文:ArcGIS for Desktop入门教程_第四章_入门案例分析 - ArcGIS知乎-新一代ArcGIS问答社区 1 入门案例分析 在第一章里,我们已经对ArcGIS系列软件的体系结构有了一个全面的了解,接下来在本章中,将通过一个案例来熟悉ArcGIS for Desktop的使用,从解决问题的过程中,逐渐适应ArcGIS桌面的界面和操作方式. 本章的练习数据是一个住宅小区的简单平面示意图,需要在已有的基础上把楼房的轮廓补充完整,并加以整饰,完成一幅地图. 1.1 打开地图文档并浏览

02331_数据结构_第1章_概论

算法: 通俗定义: 解题的方法和步骤. 狭义定义: 对存储数据的操作. 广义定义: 无论数据是如何存储的,对该数据的操作都是一样的. 我们至少可以通过两种结构来存储数据 数组 链表

02331_数据结构_第8章_查找

8.2顺序表的查找 8.2.2二分查找 1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 #include<stdlib.h> 5 6 main() 7 { 8 int a[1024]; 9 int i; 10 11 for (i = 0;i < 1024;i++) 12 { 13 a[i] = i; 14 } 15 16 int num = 33; 17 int shang = 0; 18 int xia =

PMP备考_第六章_项目时间管理

项目时间管理 前言 项目时间管理是项目管理中最难的一个环节,与个人时间管理类似,团体的效率如果管理不当,是低于个人效率的,为了管理好时间,从预估,执行到反馈均需要严格的分析和处理.如果制定的计划是无法执行,完全无法作为依据的计划,那么项目执行会进行死亡行军状态,注定是一个失败的项目. 整个项目的时间管理部分同样占据了两个过程组,一个是规划过程组,一个是监控过程组. 时间管理部分包括以下几个部分 规划时间进度管理   制定进度管理计划 定义活动                  识别完成项目所必须

《Pyhton语言程序设计》_第7章_对象和类

#7.2.1_定义类 一个类的功能:数据域.定义方法.初始化程序 初始化程序总是被命名为:_ _init_ _ (两个连续的下划线) #7.2.4_self参数 #self参数是指向对象本身的参数,那么它的作用域就是整个类,self.x可以直接访问实例变量x,self.ml()表示调用类的对象self的示例方法ml. #7.2.5_举例:使用类 原文地址:https://www.cnblogs.com/qiyuanjiejie/p/9736766.html

全国计算机等级考试二级教程-C语言程序设计_第10章_字符串

字符串排序有2种: 1长度strlen 2比较strcmp 读入一个3行的二维字符串数组,使用求字符串长度函数strlen,进行从大到小排序,使用冒泡排序. 1 #include <stdio.h> 2 #include <string.h> 3 main() 4 { 5 int i, j; 6 char t[20], a[3][20]; 7 for (i = 0;i < 3;i++) /* 为a表赋值 */ 8 { 9 gets(a[i]); 10 } 11 12 prin

全国计算机等级考试二级教程-C语言程序设计_第15章_位运算

原码 也叫 符号-绝对值码 最高位0表示正,1表示负,其余二进制位是该数字的绝对值的二进制位. 原码简单易懂 加减乘除复杂,存在加减乘除四种运算,增加了CPU的复杂度 零的表示不唯一 没有在计算机中应用 反码 反码运算不便,也没有在计算机中应用. 移码 移码表示数值平移n位,n称为移码量 移码主要用于浮点数的阶码的存储 补码 已知十进制求二进制 求正整数的二进制 除2取余,直至商为零,余数倒叙排序. 求负整数的二进制 先求与该负数相对应的正整数的二进制,然后将所有位取反,末尾加1,不够位数时,左