暑期刷题每日小结

今天是第一次写小结,希望自己坚持到考ccf,↖(^ω^)↗

1写多重嵌套循环的时候,一定要注意变量名称的选取,不能够重名

2如果在使用了动态数组的过程中改变了动态数组的长度,那么一定要注意不能直接使用动态数组的长度作为变量的结束符号,否则严重错误

3.有时候,不能使用ch == 10作为一组数据输入的结束标志,因为这组数据的末尾没有回车,设置计数器是最保险的方法


4.对于vector进行排序的方法是写sort对于一维的vector的排序方法
(vec.begin(),vec.end(),compare);

(compare可以不写)


5.对于二维vector的排序方法:
传入的参数一定要注意使用.begin()和.end(),自定义的compare()的函数 
如使用sort(v2d.begin(),v2d.end(),compare);
//默认两个数组等长
bool compare(vector <int> a,vector <int> b){
     for(int i = 0 ; i < a.size();i++ ){
if(a[i]!=b[i]){
     return a[i]<b[i];
}
     }

}


//这样默认按照升序排序
6.判断是否相等
bool is(vector <int> a,vector <int> b){
    bool flag = true;
if(a.size()!=b.size()){
return false;   

for(int i = 0 ; i < a.size(),b.size();i++){
        if(a[i]!=b[i]){
   flag = false;
   }
  }
return flag;

}


7.对于向一个二维动态数组v2d中插入一个一维的动态数组vec

不能直接v2d.push_back(vec);


而应该使用v2d.push_back(vector <TYPE> ());
int size = vec.size();//这是一个避免错误,也可以消除大量警告的好习惯
for(int i = 0 ; i <  size; i++ ){
    v2d.back().push_back(vec[i]);
}

猜你喜欢

转载自blog.csdn.net/chenhanxuan1999/article/details/81029273