1、 矩阵转置 f[i][j]<=>f[j][i] 列循环每次从0,1,2,3.。。。开始

2、变量名合法 字母数字下划线组成,第一个必须是字母 或 下划线,不能是关键字,区分大小写

ps : stdio.h isalpha(str[0]) 可以判断字母

3、固定个数 升序 全排列 使用vector做栈

递归程序{ 长度为0 输出栈

循环 push

递归程序(区间,长度)

pop }

4、逆波兰式 后缀表达式

 

5 、闰年

 if((Year%400 == 0 )||( Year%4==0 && nYear%100 != 0)) Day=29;

             else Day=28;

 

6、求数字 最多连续和 1+2、、、m+m+1<=n m=m+1 否则 输出1、2、3,。。。m、n-count

 

7、数的颠倒 j=n-(n/10)*10 p=p*10+j

 

8、邻接矩阵求连通分量

利用一个 int sign[100] 记录访问是否 和DFS算法, 第一次循环处检查、计数、调用递归程序

 

9、十进制转8进制和2进制,16进制

除留余数法,栈 逆序输出

 

10、大小写转换 char b=a-32 char b=a+32

 

11、科学计数法 5.678e3=5678 6.789e2=678.9

 

12、邮票 硬币 动态规划问题

min(value[i])=1

循环对value[i] 求min(prize-value[i])+1 条件 prize-value[i]>=0 否则pass这一条

最终全部都是-1 则 判断无最优解

 

13 n皇后问题

分支界限,递归 ,回溯 1维数组 1到n 表示列 每个元素表示行

递归程序: 求第i列 方法 循环检查 { 1到n行 :前几列同行不可以 ,2 前几列 行的上斜线 下斜线不可以

if(place[front]+hounum-front==i||place[front]-hounum+front==i)

检查通过,如果是最后列 计数++ 返回

否则,行序号放入 数组[i列]

递归程序 (i+1列) }

 

14 字符串匹配 两层循环 设置check

 

 

Logo

汇聚原天河团队并行计算工程师、中科院计算所专家以及头部AI名企HPC专家,助力解决“卡脖子”问题

更多推荐