算法
PeixinYe
以前没开通博客,记录知识不方便,现在开通了博客,用以记录以前所学知识,晒一晒,欢迎大家来讨论学习(*^▽^*)~~~~~~
展开
-
基数排序------算法排序
对于一个int数组,请编写一个基数排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。保证元素均小于等于2000。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5]import java.util.*;public class RadixSort { public int[] radixSort(int[] A, int n) { ...原创 2018-03-08 20:42:33 · 229 阅读 · 0 评论 -
计数排序----算法排序
对于一个int数组,请编写一个计数排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5]import java.util.*;public class CountingSort { public int[] countingSort(int[] A, int n) { //...原创 2018-03-08 20:43:49 · 174 阅读 · 0 评论 -
希尔排序----算法排序
对于一个int数组,请编写一个希尔排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。保证元素小于等于2000。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 解题思路 : 依次缩小步长直至步长为1import java.util.*;public class ShellSort { public int[] shellSort(i...原创 2018-03-08 20:44:58 · 200 阅读 · 0 评论 -
快速排序----排序算法
对于一个int数组,请编写一个快速排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 解题思路 :运用递归的思想 每次将传入数组的最后一个元素作为基准值,先将小于它的数全部移(交换)到数组的前面,最后将它放到中间,对两边进行同样的操作。。。import java.util.*;public c...原创 2018-03-08 20:46:22 · 294 阅读 · 0 评论 -
归并排序----排序算法
对于一个int数组,请编写一个归并排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5]import java.util.*;public class MergeSort { public int[] mergeSort(int[] A, int n) { // write...原创 2018-03-08 20:47:23 · 184 阅读 · 0 评论 -
插入排序----排序算法
对于一个int数组,请编写一个插入排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5]import java.util.*;public class InsertionSort { public int[] insertionSort(int[] A, int n) { ...原创 2018-03-08 20:48:26 · 169 阅读 · 0 评论 -
选择排序----排序算法
对于一个int数组,请编写一个选择排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。 测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 解题思路:选择排序的使用就不再赘述了 这里需要注意一点 再进行 A[tem]=A[i]时得先判断开始的位置是否就是最小值 若是 则不执行import java.util.*;public class Sel...原创 2018-03-08 20:49:26 · 146 阅读 · 0 评论 -
冒泡排序----算法排序
虽然很早之前已经写过冒泡排序的实现,不过还是再发一遍吧 。。。。 对于一个int数组,请编写一个冒泡排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 解题思路:交换排序的方法 每次比较相邻的两个数import java.util.*;public class BubbleSort { ...原创 2018-03-08 20:50:16 · 191 阅读 · 0 评论 -
堆排序----排序算法
对于一个int数组,请编写一个堆排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。测试样例: [1,2,3,5,2,3],6 [1,2,2,3,3,5] 思路:首先以整个数组建一个大根堆,然后将根与最后一个结点交换,最后一个即有序,接着大根堆的大小-1,重新建立大根堆,重复上述过程 直至堆大小为1…..import java.util.*;public clas...原创 2018-03-08 20:52:02 · 158 阅读 · 0 评论 -
杭电ACM 第1000题
#include<iostream>using namespace std;void main(){ int a,b; while(cin>>a>>b) cout<<a+b<<endl;}原创 2018-03-08 20:58:38 · 425 阅读 · 0 评论 -
杭电ACM 第1001题
#include<iostream>using namespace std;void main(){ int a=0; int sum=0; while(cin>>a) { while(a) sum+=a--; cout<<sum<<endl<<e...原创 2018-03-08 21:01:05 · 483 阅读 · 0 评论 -
杭电ACM 第1002题
#include<iostream>#include<string>using namespace std;void main(){ char ca[1001],cb[1001]; int t; int ia[1001]={0},ib[1001]={0}; size_t t1,t2; while(cin>>...原创 2018-03-08 21:06:02 · 622 阅读 · 0 评论 -
杭电ACM 第1003题
#include<iostream> using namespace std; #include<string.h> using namespace std; int main() { int t,i,j,sum,a,n,l,r,max,z; cin>>t; for(i=0;i<t;i++) ...原创 2018-03-08 21:08:33 · 1286 阅读 · 0 评论 -
杭电ACM 第1004题
#include<iostream>#include<string>#include<stdlib.h>using namespace std;void main(){ int n; while(cin>>n){ if(n==0) break; string str[10...原创 2018-03-08 21:10:18 · 662 阅读 · 0 评论 -
杭电ACM 第1005题
#include<stdio.h> int main() { int A,B,i; long int n; while(scanf("%d%d%ld",&A,&B,&n)!=EOF) { int a[50]; a[1]=1; a[2]=1; ...原创 2018-03-08 21:11:33 · 346 阅读 · 0 评论 -
杭电ACM 第1058题
#include<iostream>#include<stdio.h>#include<stdlib.h>using namespace std;#define N 5850long int s[N];long int min(long int a,long int b,long int c,long int d){ c=c<d?c:d...原创 2018-03-08 21:13:03 · 453 阅读 · 0 评论 -
杭电ACM 第1089题
#include<iostream>void main(){ int a,b; while(std::cin>>a>>b) std::cout<<a+b<<std::endl;}原创 2018-03-08 21:17:10 · 1136 阅读 · 0 评论 -
杭电ACM 第1090题
#include<iostream>void main(){int n;while(std::cin>>n){ int a,b; while(std::cin>>a>>b) std::cout<<a+b<<std::endl;}}原创 2018-03-08 21:18:17 · 1127 阅读 · 0 评论 -
杭电ACM 1091题
#include<iostream>void main(){ int a,b; while(std::cin>>a>>b&&(a||b)) std::cout<<a+b<<std::endl;}原创 2018-03-08 21:19:27 · 777 阅读 · 0 评论 -
杭电ACM 第1092题
#include<iostream>using namespace std;void main(){ int n; while(cin>>n&&n){ int sum=0; int z; while(n--){ cin>>z; sum+=z...原创 2018-03-08 21:20:26 · 1288 阅读 · 0 评论 -
杭电ACM 第1093题
#include<iostream>using namespace std;void main(){int m;while(cin>>m){while(m--){ int n; cin>>n;{ int sum=0; int z; while(n--){ cin&g...原创 2018-03-08 21:21:24 · 1053 阅读 · 0 评论 -
杭电ACM 第1094题
#include<iostream>using namespace std;void main(){ int n; while(cin>>n){ int sum=0; int z; while(n--){ cin>>z; sum+=z; }...原创 2018-03-08 21:22:38 · 802 阅读 · 0 评论 -
杭电ACM 第1095题
#include<iostream>using namespace std;void main(){ int n,m; while(cin>>n>>m){ cout<<n+m<<endl<<endl; }}原创 2018-03-08 21:23:40 · 1122 阅读 · 0 评论 -
杭电ACM 第1096题
#include<iostream>using namespace std;void main(){ int m; while(cin>>m){ while(m--){ int n; cin>>n;{ int sum=0; int z; while(n--){ ...原创 2018-03-08 21:24:42 · 840 阅读 · 0 评论 -
杭电ACM 第1097题
#include<iostream>#include<stdlib.h>using namespace std;void main(){ int a,b; int s[10][30]; memset(s,0,sizeof(s)); for(int i=0;i<10;++i){ s[i][1]=i; ...原创 2018-03-08 21:26:36 · 404 阅读 · 0 评论 -
杭电ACM 1176题
#include<stdio.h>#include<string.h>#include<stdlib.h>int fff[100002][11];int max (int x,int y,int z){ if(x>=y&&x>=z) return x; if(y>=x&&...原创 2018-03-08 21:27:47 · 319 阅读 · 0 评论 -
杭电ACM 第1214题
#include<iostream>using namespace std;#define N 32767int s[N];void main(){ s[0]=0; s[1]=1; s[2]=1; s[3]=2; s[4]=4; s[5]=6; for(int i=6;i<N;++i){ s[i]=s...原创 2018-03-08 21:29:03 · 214 阅读 · 0 评论 -
杭电ACM 第2000题
#include<iostream>#include<string>using namespace std;void main(){ char a,b,c; while(cin>>a) { cin>>b; cin>>c; if(a<b) ...原创 2018-03-10 14:56:08 · 573 阅读 · 0 评论 -
杭电ACM 第2001题
#include<iostream>#include<math.h>#include<iomanip>using namespace std;void main(){ double x1,x2,y1,y2; while(cin>>x1){ cin>>y1>>x2>>y2;原创 2018-03-10 14:56:58 · 539 阅读 · 0 评论 -
杭电ACM 第2002题
#include<iostream>#include<math.h>#include<iomanip>#define PI 3.1415927using namespace std;void main(){ double r; while(cin>>r&&r>=0){ double q=...原创 2018-03-10 14:57:36 · 359 阅读 · 0 评论 -
杭电ACM 第2003题
#include<iostream>#include<iomanip>using namespace std;void main(){ double t; while(cin>>t){ if(t<0) t=-t; cout<<setprecision(2)<&l...原创 2018-03-10 14:58:45 · 347 阅读 · 0 评论 -
杭电ACM 第2004题
#include<iostream>using namespace std;void main(){ int t; while(cin>>t){ if(t>100||t<0) cout<<"Score is error!"<<endl; else if(...原创 2018-03-10 14:59:14 · 303 阅读 · 0 评论 -
杭电ACM 第2005题
#include<iostream>#include<string>#include<stdlib.h>using namespace std;int runnian(int year){ if((year%4==0&&year%100!=0)||(year%400==0)) return(1); else...原创 2018-03-10 14:59:56 · 450 阅读 · 0 评论 -
杭电ACM 第2006题
#include<iostream>using namespace std;void main(){ int t=0; while(cin>>t){ int sum=0; int q=0; int a=0; while(t--){ ...原创 2018-03-10 15:00:32 · 726 阅读 · 0 评论 -
杭电ACM 第2007题
#include<iostream>using namespace std;void main(){ int m,n,x,y; while(cin>>m){ cin>>n; if(m>n){ m+=n; n=m-n; m=m-n;...原创 2018-03-10 15:01:08 · 408 阅读 · 0 评论 -
杭电ACM 第2009题
#include<iostream>#include<math.h>#include<iomanip>using namespace std;void main(){ int m,n; while(cin>>m){ long double mm=0.0; long double sum=0.0;...原创 2018-03-10 15:01:57 · 485 阅读 · 0 评论 -
杭电ACM 第2010题
#include<stdio.h>int main(){int b, l, c, i;int a[] = {1, 153, 370, 371, 407};while (scanf("%d%d", &b, &l) != EOF){c = 0;for (i = 0 ; i < 5 ; i++){if (a[i] >= b &&am...原创 2018-03-10 15:02:38 · 747 阅读 · 0 评论 -
杭电ACM 第2011题
#include<iostream>#include<iomanip>using namespace std;void main(){ int m; while(cin>>m){ while(m--){ double sum=0.0; double n; ...原创 2018-03-10 15:03:22 · 474 阅读 · 0 评论 -
杭电ACM 第2012题
#include<iostream>#include<math.h>using namespace std;int sushu(int n){ if(n==1) return 1; if(n==2) return 0; for(int i=2;i<=sqrt(n);++i){ if(n%i=...原创 2018-03-10 15:04:02 · 924 阅读 · 0 评论 -
杭电ACM 第2013题
#include<iostream>void main(){ int n,m; while(std::cin>>n){ m=1; while(--n) { m=(m+1)*2; } std::cout<<m<<s...原创 2018-03-10 15:04:40 · 343 阅读 · 0 评论