算法笔记摘要—第三章
1.查找元素,查找范围较大时可以用二分法
2.图形输出:
通过规律直接进行输出
定义一个二维数组,通过规律填充之,然后输出整个二维数组
3.日期处理:
平年和闰年每个月的天数
int month[13][2]={{0,0},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31}}
bool isLeap(int year){
return (year%4==0&&year%100!=0)||(year%400==0);
}
4.进制转换
将P进制数x转换为10进制y,将y再转换成Q进制数z
5.字符串处理:
回文数
bool judge(string s){
for(int i=0;i<(s.size()/2);i++){
if(s[i]!=s[s.size()-i-1])
return false;
}
return true;
}
说反话(将句中所有单词颠倒顺序输出,单词之间间隔空格)
char ans[90][90]
while(scanf("%s",ans[num])!=EOF){
num++;
}
for(int i=num-1;i>=0;i++){
printf("%s",ans[i]);
if(i>0)printf(" ");
}