摘要:
给出第二种思路下的代码:(区别在于初始化全为1,而后处理要被赦免的人) 阅读全文
摘要:
这里分别给出递推和递归的代码实现: 1.递推: 2.递归: 最后会发现递推写出的代码的复杂度是要比递归低很多的,当要求的数很大时,很明显递推是一种比较好的选择。 阅读全文
摘要:
1.以上为计数排序的基本原理和简单实现,其时间复杂度为:o(m+n),但如果待排序的元素范围为90-99,那么用这种方法就会浪费内存和时间(前90号没用到),所以会有优化的方案。 2.如果出现几个元素大小相同时,要求按照原来固有的顺序排序(比如学生的成绩,甲和乙成绩相同,但得按原来给定的顺序:甲先乙 阅读全文
摘要:
阅读全文
摘要:
#include <iostream> #include <cstdio> using namespace std; int n; int a[105]; int b[105]; int read() { scanf("%d",&n); for(int i=0;i<n;i++)//不能开一个变量大小 阅读全文
摘要:
#include <iostream> //核心思想在于穿墙而过 #include <cstdio> using namespace std; int main() { int n,l,p,maxv=0,minv=0; scanf("%d%d",&l,&n); for(int i=1;i<=n;i+ 阅读全文
摘要:
#include <iostream> #include <cstdio> #include <algorithm> using namespace std; int a[100]; int main() { int n,k; cin>>n>>k; for(int j=0;j<n;j++) cin> 阅读全文
摘要:
#include <iostream> #include <cstdio> using namespace std; char a[110][110]; //根据雷区设定的数组大小 void fun(int n,int m) { for(int i=1;i<=n;i++) //以字符串的形式往二维数 阅读全文
摘要:
#include <iostream> #include <cstdio> #include <ctime> #include <cstdlib> using namespace std; //快速排序 /* 原理:取基准,比基准数小的放在左边,比基准数大的放在右边,递归 另外,关于下文中提出的几个 阅读全文
摘要:
#include <iostream> #include <cstdio> using namespace std; //归并排序 /* 原理:分而治之,然后合之。 一分为二,然后从两个数组中头部依次拿出较小的值放入辅助数组中,从而达到排序的目的。 */ int a[9]={0,1,54,77,24 阅读全文