快速排序算法c语言实验报告

实验六:冒泡法排序  物理学416班赵增月F12XX日期:XX年10月31日  一·实验目的1.熟练掌握程序编写步骤;  2.学习使用冒泡法和选择法排序;  3.熟练掌握数组的定义和输入输出方法。  二·实验器材  1.电子计算机;  三·实验内容与流程  1.流程图  冒泡法  (2)选择法2.输入程序如下:冒泡法#includevoidmain(){inta[10];inti,j,t;printf("请输入10个数字:\n");for(i=0;ia[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("排序后如下:\n");for(i=0;ivoidmain(){inta[10];inti,j,t,k;printf("请输入10个数字:\n");for(i=0;ia[j])k=j;t=a[i];a[i]=a[k];a[k]=t;}  printf("排序后如下:\n");for(i=0;i  #include  #include  #include  #definerandx(x)(rand()%x)  typedefintKeyType;  typedefintDataType;  typedefstruct  {  KeyTypekey;/*排序码字段*/  DataTypeinfo;/*记录的其它字段*/  }RecordNode;  typedefstruct  {  intn;/*文件中的记录个数,可以视为常量*/  RecordNode*record;  }SortObject;  voidcreatsort(SortObject*pvector,int&l,int&r)//新建二叉排序树  {  inti;intk;  printf("您即将要创建一个序列\n");  printf("\n请输入该序列元素的个数\n");  scanf("%d",&pvector->n);  pvector->record=(RecordNode*)malloc((sizeof(RecordNode))*(pvector->n));  printf("\n你要以什么方式创建序列?\n方式1:自动创建请输入1,方式2:手动创建请输入0\n");  scanf("%d",&k);  if(k)  {  srand((int)time(0));  for(i=0;in;i++)  {  if(pvector->nrecord[i].key=randx(100);  elseif((pvector->nrecord[i].key=randx(1000);  else  pvector->record[i].key=randx(pvector->n);  }  }  else  {  printf("\n请输入%d个大小不一样的整数\n",pvector->n);  for(i=0;in;i++){scanf("%d",&pvector->record[i].key);}}if(pvector)printf("\n序列创建成功!\n");else  printf("\n序列创建失败!\n");  l=0,r=pvector->n-1;  }  voidshow(SortObject*pvector)  {  printf("\n当前序列为:\n");  if(!pvector)  printf("当前序列为空");  else  for(inti=1;in;i++)  {  printf("%d",pvector->record[i-1].key);  if(i%15==0)  printf("\n");  }  printf("\n");  }  voidquickSort(SortObject*&pvector,intl,intr)  {  inti,j;  RecordNodetemp,*data=pvector->record;  if(l>=r)  return;/*只有一个记录或无记录,则无须排序*/i=l;  j=r;  temp=data[i];  while(i!=j)  {/*找Rl的最终位置*/  while(i=)  j--;/*向左扫描找排序码小于的记录*/if(i,i-1);/*递归处理左区间*/  quickSort(pvector,i+1,r);/*递归处理右区间*/  }  voidinterface(void)  {  printf("\n&&&&&&&&&&&&&

快速排序实验报告 c语言,快速排序算法c语言实验报告.docx相关推荐

  1. 密码学实验报告c语言程序,密码学_实验一_古典密码算法_C语言.doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp高等教育&nbsp>&nbsp实验设计 密码学_实验一_古典密码算法_C语言.doc8页 本 ...

  2. c语言考试算法,c语言考试常用算法docx.docx

    c语言考试常用算法docx 求1~100的累加和#includevoid main(){inti=1,sum=0;while (i<=100){sum+=i;i++;}printf(" ...

  3. 10幻方c语言,幻方算法 C语言描述

    幻方算法的所有情况描述及C语言表示 2019-03-30 讨论幻方前,先讨论一下动态申请数组大小 众所周知 在C语言中必须指定数组的大小 否则会报错.如果你不知道你要申请多大的数组怎么办?初始化一个非 ...

  4. 自动寻路算法C语言,bfs算法(c语言贪吃蛇自动寻路算法)

    广度优先法(BFS)算法C/C++代码,要说明和图解!谢谢! #include #define MAX 10 int front=-1,rear=-1; struct node { int value ...

  5. 经典c语言程序设计算法,C语言程序设计和循环结构相关的经典算法之一.ppt

    C语言程序设计和循环结构相关的经典算法之一 第七讲 循环结构的经典算法之一 程序设计举例 ;教 学目 的 :1.灵活运用循环语句 2.编写一些基本算法程序 教学重点和难点:重点:判断素数,求最大公约数 ...

  6. c语言程序设计 算法,C语言程序设计第二章算法

    <C语言程序设计第二章算法>由会员分享,可在线阅读,更多相关<C语言程序设计第二章算法(38页珍藏版)>请在人人文库网上搜索. 1.C程序设计,主讲人:袁丽,燕大里仁基础教学部 ...

  7. c语言峰值算法_C语言寻找一组数据中的第一第二峰值

    C语言寻找一组数据中的第一第二峰值 实验要求,我需要找出一组数组中的两个峰值:第一个峰值和第二个峰值及其数组下标.这组数据画出的图应该是这样的,我就要找出图中的那两个峰值 我写的程序如下,我试了一下, ...

  8. c语言排序算法_C语言写排序算法(二) —— 选择排序

    上次联系的算法是冒泡排序,不知道小伙伴们还记得不,中间穿插了一下比特币相关的分享,嘿嘿.今天来分享一下选择排序. 算法描述:选择排序是从数组中选择最大(小)的元素放到数组的最后一个,然后往前移,接着从 ...

  9. c语言lzma算法,C语言编程使用lzma SDK对7z文件简略解压缩

    有时候我们只需要单纯对lzma算法压缩的7z文件进行解压,有时需要在嵌入式设备上解压,使用p7zip虽然支持多种格式,但是不容易裁剪,使用lzma SDK是首选: 可以在这里找到各种版本:http:/ ...

  10. C语言HeapBottomUP算法,C语言堆的建立Percolate Up and Down

    6-8 Percolate Up and Down (20 point(s)) Write the routines to do a "percolate up" and a &q ...

最新文章

  1. Git 的简单使用及ssh配置问题-赖大大
  2. Alpha冲刺 - 事后诸葛亮
  3. Eclipse集成Groovy插件
  4. Scala流程控制语句值顺序控制
  5. boost::vf2_subgraph_iso用法的测试程序
  6. java中的tostring_java 中重写toString()方法
  7. javascript 通过地址获取经纬度 get lat long from address
  8. php sql中文乱码怎么解决,php显示mssql中文乱码怎么办
  9. windows批处理文件打印幻方
  10. hdu5651 xiaoxin juju needs help(逆元)
  11. 国产车崛起粉碎德日工业神话
  12. c语言中的正号运算符,C语言 运算符
  13. 软考网络工程师基础知识
  14. 基于javaweb+jsp的健康体检信息管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)
  15. c语言pow为什么溢出,c – GMP pow中的溢出处理
  16. 马云为何学计算机,IT大佬高考:李彦宏是状元 马云数学仅1分
  17. 阿里云 centos安装oracle 11g 完全图解
  18. 锐捷路由器如何配置虚拟服务器,[路由器自动配置方法技巧] 锐捷路由器配置方法...
  19. 802.11 NDP Sounding
  20. 在线诱舞坊字体转换FLASH工具 QQ空间专用字体转换器

热门文章

  1. docker运行yyets_docker常规操作——启动、停止、重启容器实例
  2. ”The Importance of Perl “
  3. 阴阳对优化算法Yin YangPairOptimizationYYPO 2016
  4. html ol li 数字点去掉,HTML 去除 li 前面的小黑点及 ul、li 部分属性介绍
  5. FTP服务器ip地址修改,文件上传和下载详解
  6. sqlyon社区版_SQLyog社区版(SQLyog Community)
  7. Vue3下PostCSS Loader has been initialized using an options that does not match the API schema的问题解决
  8. windows 计算机 快捷键,Windows10系统计算器快捷键是什么?
  9. c if sortable html,Rails 5 - html5sortable - sortable不是HTMLDocument.ready中的函数
  10. 2g内存测试软件,轻松处理造成2G内存只有1G可用的妙招