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

新疆建设兵团130团网站/营销策划公司的经营范围

新疆建设兵团130团网站,营销策划公司的经营范围,wordpress增加专题,wordpress 登录空白使用list实现了排序的中比较简单的插入排序,箱子排序和基数排序,其中,箱子排序和基树排序只能用于数的排序,所以限制还是蛮大的,箱子排序在实际使用中基本上不使用,箱子排序是基数排序的基础,基…

使用list实现了排序的中比较简单的插入排序,箱子排序和基数排序,其中,箱子排序和基树排序只能用于数的排序,所以限制还是蛮大的,箱子排序在实际使用中基本上不使用,箱子排序是基数排序的基础,基数排序有MSD和LSD,MSD也就是从最高位开始向最低位排序,LSD也就是从最低位向最高位排序。

下面附上我的实现代码:

//============================================================================
// Name        : STLPractice2.cpp
// Author      : 陈洪波
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================#include <iostream>
#include <list>using namespace std;void selecrSort(int test[],int size);void bulletSort(int test[],int size);void radixSort(int test[],int size,int wei);
/*** 实现插入排序,箱子排序和基数排序*/
int main() {int test[]= {2,1,4,3};//selecrSort(test,4);//  for(int i = 0;i < 4;i++){
//      cout << test[i] << " ";
//  }//bulletSort(test,4);radixSort(test,4,1);for(int m = 0;m < 4;m++){cout << test[m] << "    ";}cout << endl;return 0;
}/*** 插入排序* 假定数组的第一个元素是排好序的,则从第二个元素开始* 与前面的元素进行排序,这样就可以实现排序了* 例如: 2 1 4 3* 假设第一个元素2已经排好序了* 则从第二个元素1开始,向前找,2大于1* 则将2向后移动,最后将1插入到2的位置* 就变成了 1 2 4 3* 4比2大,则就保持4所在的位置* 3比4小,则4后移,比2大,则3放在4的位置* 这样排序就完成了* 1 2 3 4*/
void selecrSort(int test[],int size){if(size == 1)return;int i = 1;for(i = 1;i < size;i++){if(test[i-1] > test[i]){int temp = test[i];int j = i-1;while(j>=0 && test[j] >= temp){test[j+1] = test[j];j--;}test[j+1] = temp;}}
}//获取数组中的最大元素
int Max(int test[],int size){int i = 0;int max = test[0];for(i = 1;i < size;i++){if(test[i] > max)max = test[i];}return max;
}//获取数组中的最小元素
int Min(int test[],int size){int i = 0;int min = test[0];for(i = 1;i < size;i++){if(test[i] < min)min = test[i];}return min;
}/*** 箱子排序* 箱子排序就是相当于桶排序,将每一个不一样大小* 的数放入到代表不同数字的桶中,最后再将桶中的元素顺序输出*/
void bulletSort(int test[],int size){int max = Max(test,size);int min = Min(test,size);//暂时使用Listlist<int> *lists = new list<int>[max-min+1]();int i = 0;for(i = 0;i < size;i++){lists[test[i]-min].push_back(test[i]);}//输出for(i = 0;i < max-min+1;i++){list<int>::iterator it = lists[i].begin();cout << *it << " ";}
}/*** 基树排序(有MSD和LSD)* 现在先实现最简单的基数排序,就是对数字只有从小到大排序,没有类别之分* 基数排序的思想就是:* 先对个位数字进行排序,排序完成之后,统计成堆* 接着对上面排好序的十位数字进行排序,排序完成之后,再进行对* 排好序的百位数字排序,一次类推*/
void radixSort(int test[],int size,int wei){int i = 0;int m = 0;for(m = 1;m <= wei;m++){//还是采用list作为桶list<int> *lists = new list<int>[10];for(i = 0;i < size;i++){int temp = test[i];int loc = 1;int tt = 1;for(tt = 1;tt < m;tt++){loc *= 10;}lists[(temp/loc%10)].push_back(test[i]);}int j = 0;for(i = 0;i < 10;i++){if(lists[i].size() != 0){list<int>::iterator it = lists[i].begin();while(it != lists[i].end()){test[j] = *it;it++;j++;}}}}
}/*** 用于对a和b交换*/
void swap(int &a,int &b){int temp = a;a = b;b = temp;
}

转载于:https://www.cnblogs.com/bobo1223/p/7287610.html

http://www.lbrq.cn/news/1189.html

相关文章:

  • 做的比较好的公司网站/今日最新国内新闻重大事件
  • 用dw做电子商务网站步骤/指数基金什么意思
  • 请公司做网站没有做好可以退钱吗/百度投诉中心24小时电话
  • 网站建设问答/国家高新技术企业查询
  • 厦门网站开发培训/自己做网站制作流程
  • 做淘宝网站要会程序吗/seo优化软件有哪些
  • 曲阜做网站的公司/资源搜索器
  • 济南集团网站建设报价/竞价推广专员
  • 怎么写自己的网页/江苏网站seo营销模板
  • 罗湖网站建设费用/千锋教育和达内哪个好
  • 网站按钮设计成什么颜色原因/网店推广平台
  • 产品介绍网站模板下载地址/7个经典软文营销案例
  • 大气腐蚀网站建设/外链群发平台
  • 北京市工商注册登记网/北京seo网站优化公司
  • 咸阳个人兼职网站建设/流量点击推广平台
  • 河南专业网站建设哪家好/ip网站查询服务器
  • wordpress 邮件认证/泉州网站seo外包公司
  • 平台类网站建设/百度快照怎么没有了
  • wordpress情侣博客/优化设计英语
  • wordpress ftp帐号/seo网络推广培训班
  • 外贸网站做排名/如何在网上推广
  • 网站建设竞争大吗/怎么样优化网站seo
  • 建网站 3年服务/市场营销是做什么的
  • 数据开放网站建设内容/中山seo
  • 物流公司排名/绍兴seo网站管理
  • 金蝶直播/seo的定义是什么
  • 编写wordpress主题/盐城seo营销
  • 重庆建造师管理系统查询系统/seo课程培训学校
  • 培训网站建设学校/项目营销推广策划
  • 高端建站设计/事件营销
  • 【科研绘图系列】R语言绘制多种饼图
  • 【swift开发】SwiftUI概述 SwiftUI 全面解析:苹果生态的声明式 UI 革命
  • PaddleOCR从小红书视频中提取字幕并生成思维导图
  • 读取Kaggle下载的数据集(数据的读取 f’{path}\\CMaps\\train_FD001.txt’)
  • 分布式系统架构设计模式:从微服务到云原生
  • 美团搜索推荐统一Agent之交互协议与多Agent协同