当前位置: 首页 > news >正文

网址我的上网主页seo培训中心

网址我的上网主页,seo培训中心,做食材的网站,十个知名的跨境电商公司排序算法#xff1a;交换类排序#xff0c;插入类排序、选择类排序、归并类排序 交换类排序#xff1a;冒泡排序、快速排序 一、冒泡排序 #include stdio.h #include stdlib.h #include time.h typedef int ElemType; typedef struct{ElemType *e…排序算法交换类排序插入类排序、选择类排序、归并类排序 交换类排序冒泡排序、快速排序 一、冒泡排序 #include stdio.h #include stdlib.h #include time.h typedef int ElemType; typedef struct{ElemType *elem; //整形指针,申请的堆空间的起始地址存入elem int TableLen; //存储动态数组里边元素的个数 }SSTable;void ST_Init(SSTable ST,int len){ST.TableLenlen;ST.elem(ElemType *)malloc(sizeof(ElemType)*ST.TableLen);int i;srand(time(NULL)); //随机数生成for(i0;iST.TableLen;i){ST.elem[i]rand()%100;} }void ST_print(SSTable ST){int i;for(i0;iST.TableLen;i){printf(%3d,ST.elem[i]);}printf(\n); }void swap(ElemType a,ElemType b){ElemType tmp;tmpa;ab;btmp; } //两层循环 //优先写内层循环再写外层循环 void BubbleSort(ElemType A[],int n){int i,j;bool flag; for(i0;in-1;i){ //控制的是有序数的数目flagfalse; for(jn-1;ji;j--){ //内层控制比较和交换 if(A[j-1]A[j]){swap(A[j-1],A[j]);flagtrue;}}if(flagfalse){ //如果一趟没有发生任何交换说明数组有序提前结束排序return; }} }int main(){SSTable ST;ST_Init(ST,10); ST_print(ST);BubbleSort(ST.elem,10); ST_print(ST);return 0; } 时间复杂度内层是ji外层是从0到n-1运行的总次数是1234...n-1,即O() 空间复杂度O(1)没有使用额外空间不会因为n的变化而变化 如果数组本身有序最好的时间复杂度是O(n) 二、快速排序 核心分治思想 #include stdio.h #include stdlib.h #include time.h typedef int ElemType; typedef struct{ElemType *elem; //整形指针,申请的堆空间的起始地址存入elem int TableLen; //存储动态数组里边元素的个数 }SSTable;void ST_Init(SSTable ST,int len){ST.TableLenlen;ST.elem(ElemType *)malloc(sizeof(ElemType)*ST.TableLen);int i;srand(time(NULL)); //随机数生成for(i0;iST.TableLen;i){ST.elem[i]rand()%100;} }void ST_print(SSTable ST){int i;for(i0;iST.TableLen;i){printf(%3d,ST.elem[i]);}printf(\n); }void swap(ElemType a,ElemType b){ElemType tmp;tmpa;ab;btmp; } int Partition(ElemType A[],int low,int high){ElemType pivotA[low]; //拿最左边的作为分割值并存储下来 while(lowhigh){while(lowhighA[high]pivot){ //从后往前遍历找到一个比分割值小的 --high;}A[low]A[high]; while(lowhighA[low]pivot){low;}A[high]A[low];}A[low]pivot;return low; //返回分割值所在的下标 }//递归实现 void QuickSort(ElemType A[],int low,int high){if(lowhigh){int pivotposPartition(A,low,high);QuickSort(A,low,pivotpos-1);QuickSort(A,pivotpos1,high);} } int main(){SSTable ST;ST_Init(ST,10); ST_print(ST);QuickSort(ST.elem,0,9); ST_print(ST);return 0; } 空间复杂度与n有关  三、插入排序 插入排序直接插入排序、折半插入排序、希尔排序 直接插入排序 #include stdio.h #include stdlib.h #include time.h typedef int ElemType; typedef struct{ElemType *elem; //整形指针,申请的堆空间的起始地址存入elem int TableLen; //存储动态数组里边元素的个数 }SSTable;void ST_Init(SSTable ST,int len){ST.TableLenlen;ST.elem(ElemType *)malloc(sizeof(ElemType)*ST.TableLen);int i;srand(time(NULL)); //随机数生成for(i0;iST.TableLen;i){ST.elem[i]rand()%100;} }void ST_print(SSTable ST){int i;for(i0;iST.TableLen;i){printf(%3d,ST.elem[i]);}printf(\n); }void InsertSort(ElemType *arr,int n){int i,j,insertVal;for(i1;in;i){ //控制要插入的数 insertValarr[i]; //先保存要插入的值//内层控制比较往后覆盖 for(ji-1;j0arr[j]insertVal;j--){arr[j1]arr[j];} arr[j1]insertVal;} }int main(){SSTable ST;ST_Init(ST,10); ST_print(ST);InsertSort(ST.elem,10); ST_print(ST);return 0; }
http://www.zqtcl.cn/news/871133/

相关文章:

  • 上海建网站服务器河南网站推广优化排名
  • 夸克作文网站淄博团购网站建设
  • 家居类企业响应式网站一个很好的个人网站开发
  • 推荐网站建设服务器百度竞价入口
  • 微信如何做网站100个成功营销策划案例
  • 手机网站分享js代码外贸网站做几种产品
  • 文化网站建设论文wordpress模板打包
  • 学校网站查询做网站 先上线再调整
  • 如何制作一个好网站培训教育网站开发
  • 杭州市网站seo网站微信建设
  • 做购物网站 需要手续安徽科技学院
  • 网站顶部下拉广告网页游戏设计培训学校
  • 做seo的网站是怎么样的wordpress访问地图
  • 国外psd免费下载网站公司网站设计的公司
  • jsp sql 网站开发天津建站管理系统信息
  • 网站建设教程搭建浊贝湖南岚鸿给力企业网站定制公司
  • 网站建设与数据库维护 pdf廊坊seo关键字排名
  • 十元精品店做网站微信开发网站制作
  • 做乡镇网站地图上搜索不到的公司正规吗
  • 新材料 东莞网站建设多wordpress整合
  • 17做网店这个网站做起多少钱中信建设有限责任公司招标平台
  • 做慕课的网站一线设计公司
  • 官方网站app最新下载陕西建设厅八大员官方网站
  • 个体户可以备案网站吗运营
  • 政务网站模版建一个团购网站
  • 信用网站建设方案软文内容
  • PHP网站开发方向企业宣传片制作公司光年映画
  • 满城住房和城乡建设局网站上海最好的网站是什么
  • 网站建设合作网络营销是什么模式
  • 做个网站怎样做的网站建设刂搜金手指下拉贰肆