随笔分类 - RECRUITMENT
摘要:尽量减少空间复杂度。View Code 1 //矩阵旋转,顺时针90,180,270度 2 3 #include<iostream> 4 using namespace std; 5 6 #define M 4 7 #define N 3 8 9 char source[M][N];10 char rotate1[N][M];11 char rotate2[M][N];12 char rotate3[N][M];13 14 15 16 17 void revolve1()18 {19 char *p=source[M-1]; //记住一点,b和&b[0]意思一样,都是行地址
阅读全文
摘要:传入一个数组如 {1,2,3,4,5,6,7} 将数组前面 head的一个子集移到数组末尾end如input numberOfElements=3,则{1,2,3,4,5,6,7}=>{4,5,6,7,1,2,3} input numberOfElements=5,则{1,2,3,4,5,6,7}=>{6,7,1,2,3,4,5} 如何写出该算法?方法一:用前部分逆置,后部分逆置,整个数组逆置。注意数组名作形参的时候,会退化为指针,所以用sizeof(a)/sizeof(a[0])是求不出数组长度的,目前只知道直接传入数组长度的方法。View Code 1 #include<
阅读全文
摘要:1.打印蛇形矩阵刚刚写了一下这道题,主要是控制循环语句,思路清晰了代码自然就漂亮了。View Code 1 #include<iostream> 2 using namespace std; 3 4 #define N 5 5 int a[N][N]; 6 7 int main() 8 { 9 int num=0;10 bool flag=true; //flag控制添斜线的上下的方式,每次打印完一个斜线改变一下11 for(int slopline=0; slopline<=N-1; ++slopline) //slopline控制斜线,总共打印2N-1个...
阅读全文
摘要:打印以下序列:(a),(b),(c),(d),(e)........(z)(a,b),(a,c),(a,d),(a,e)......(a,z),(b,c),(b,d).....(b,z),(c,d).....(y,z)(a,b,c),(a,b,d)....(a,b,z),(a,c,d)....(x,y,z)....(a,b,c,d,.....x,y,z)思路一:每个集合可以看做一个数,根据字母是26进制的特性,生成所有数(去掉一些),再排序输出。但最大的数可以到达26^26,复杂度太大。且不知如何实现。思路二:用到排列组合的思想,用递归代替26重循环。View Code 1 #include.
阅读全文

浙公网安备 33010602011771号