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

设计图案用什么软件上海seo培训中心

设计图案用什么软件,上海seo培训中心,如何做网站拥有自己的地址,广州正规网站建设企业一.冒泡排序 原理:自左向右依次遍历,若相邻两数顺序错误,则交换两数. 这样,每一轮结束后,最大/最小的数就会到最后. Code: #include <iostream> #include <cstdio> using namespace std; const int N1e51; int n,a[N],in; void PrintArray(int a[],int n){for…

一.冒泡排序

原理:自左向右依次遍历,若相邻两数顺序错误,则交换两数.

这样,每一轮结束后,最大/最小的数就会到最后.

Code:

#include <iostream>
#include <cstdio>
using namespace std;
const int N=1e5+1;
int n,a[N],in; 
void PrintArray(int a[],int n){for(int i=1;i<=n;i++){printf("%d ",a[i]);} 
} 
int main(){cin>>n;for(int i=1;i<=n;i++){scanf("%d",&a[i]); }for(int i=1;i<=n-1;i++){bool flag=true;for(int j=1;j<=n-1;j++){if(a[j]>a[j+1]) swap(a[j],a[j+1]),flag=false;} if(flag) break; } PrintArray(a,n);return 0;
}

我在此使用了函数.

二.选择排序

原理:自左向右依次遍历,选出最大/最小数,放到最前/最后

Code:

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
const int N=1e5+1;
int n,a[N],in; 
void PrintArray(int a[],int n){for(int i=1;i<=n;i++){cout<<a[i]<<" "; } 
} 
int main(){cin>>n;for(int i=1;i<=n;i++){scanf("%d",&a[i]); }for(int i=1;i<=n-1;i++){in=i;for(int j=i+1;j<=n;j++){if(a[j]<a[in]){in=j; }			} swap(a[in],a[i]);} PrintArray(a,n);return 0;
}

函数与双指针搭配,非常好用!

三.桶排序

桶排序是最快的排序.

每个数都对应了一个桶,遍历查找,若有该数,桶为true,最后遍历输出(并无真正排序)

但无法创建过多桶(数组爆炸危机)

Code:

#include <iostream>
#include <cstdio>
using namespace std;
const int N=1e5+1;
int n,a[N],t,Max; 
int main(){cin>>n;for(int i=1;i<=n;i++){scanf("%d",&t);a[t]=1;Max=max(Max,t); } for(int i=1;i<=Max;i++){if(a[i]) cout<<i<<" "; } return 0;
}

但如果一个数有两个呢?如:2个2

升级:

#include <iostream>
#include <cstdio>
using namespace std;
const int N=1e5+1;
int n,a[N],t,Max; 
int main(){cin>>n;for(int i=1;i<=n;i++){scanf("%d",&t);a[t]++;Max=max(Max,t); } for(int i=0;i<=Max;i++){while(a[i]--) cout<<i<<" "; } return 0;
}

四.插入排序

插入排序,就是你打牌时摸牌并排序啦..

Code:

#include <iostream>
#include <cstdio>
using namespace std;
const int N=1e5+1;
int n,a[N],in; 
void PrintArray(int a[],int n){for(int i=1;i<=n;i++){cout<<a[i]<<" "; } 
} 
int main(){cin>>n;for(int i=1;i<=n;i++){scanf("%d",&a[i]); }for(int i=2;i<=n;i++){int in=i-1,now=i;while(in>=1 and a[now]<a[in]){swap(a[now--],a[in--]);			 } } PrintArray(a,n);return 0;
}

还有许多排序,等你去探索...

五.归并排序

#include <cstdio>
#include <malloc.h>#define maxn 1000001int a[maxn];void Input(int n, int *a) {for(int i = 0; i < n; ++i) {scanf("%d", &a[i]);}
}void Output(int n, int *a) {for(int i = 0; i < n; ++i) {if(i)printf(" ");printf("%d", a[i]);}puts("");
}void MergeSort(int *nums, int l, int r) {int i, mid, p, lp, rp;int *tmp = (int *)malloc( (r-l+1) * sizeof(int) );    // (1)  if(l >= r) {return ;                                          // (2) }mid = (l + r) >> 1;                                   // (3) MergeSort(nums, l, mid);                              // (4) MergeSort(nums, mid+1, r);                            // (5) p = 0;                                                // (6) lp = l, rp = mid+1;                                   // (7) while(lp <= mid || rp <= r) {                         // (8) if(lp > mid) {tmp[p++] = nums[rp++];                        // (9) }else if(rp > r) {tmp[p++] = nums[lp++];                        // (10) }else {if(nums[lp] <= nums[rp]) {                    // (11) tmp[p++] = nums[lp++];}else {tmp[p++] = nums[rp++];}}}for(i = 0; i < r-l+1; ++i) {nums[l+i] = tmp[i];                               // (12) } free(tmp);                                            // (13) 
}int main() {int n;while(scanf("%d", &n) != EOF) {Input(n, a);MergeSort(a, 0, n-1);Output(n, a);}return 0;
} 

彩蛋:

求一数是否是完全平方数(int范围内)

bool sq(int a){return int(sqrt(a))*int(sqrt(a))==a;
} 

需导入cmath头文件!

http://www.dtcms.com/wzjs/100690.html

相关文章:

  • 海南科技职业大学教务网络管理系统seo课程培训中心
  • 网站搭建的策略与方法sem推广案例
  • 网站需求怎么做免费营销培训
  • 企业网站app制作价格品牌营销平台
  • 网站二级菜单是什么培训总结精辟句子
  • 做网站语言javanba排名
  • 怎样做网站快手刷粉公司软文代写
  • 建设网站的公司汇总谷歌推广代理商
  • 单位建设网站需要招标找回今日头条
  • 做网站多久学会广告优化师是做什么的
  • 做动漫网站要多少钱我要推广网
  • 静安区品牌网站建设网站运营推广的方法有哪些
  • 电子商务网站设计与规划友情链接代码
  • 自己有主机怎么做论坛网站青岛网络优化哪家专业
  • 招远网站建设多少钱高端快速建站
  • 网站信息发布系统外贸推广方式都有哪些
  • 给客户做一个网站ppt怎么做广告营销的经典案例
  • 做寝室介绍网站互动营销是什么意思
  • 大宅别墅设计装修公司网站seo运营
  • 网站建设胶州seo课程培训要多少钱
  • 做电子商务平台b2b硬件优化大师
  • 智能建站官网企业网
  • 网上做调查网站免费的编程自学网站
  • 北京网站开发公司一网天行新手怎样做网络推广
  • 淮安注册公司企业seo网站营销推广
  • 找外包做网站深圳宝安seo外包
  • 网站美术视觉效果布局设计北京网站外包
  • 怎么查网站开发者联系方式营销网站系统
  • 西安做网站建设搜索引擎优化的方式有哪些
  • 购买域名后用wordpress建站临沂百度推广的电话