1. 程式人生 > >?:,reverse,vector的基本小結

?:,reverse,vector的基本小結

urn 裏的 小結 問題 str con 一個數 ostream return

 1 #include <cstdio>  //此代碼為網上所復制
 2 #include <iostream>  
 3 #include <string>  
 4 #include <set>  
 5 #include <algorithm>  
 6 #include <vector>  
 7 using namespace std;
 8 
 9 bool Comp(const string &s1, const string &s2)
10 {
11     return s1.length() != s2.length() ? s1.length()<s2.length() : s1<s2;
12 } 13 int main() 14 { 15 vector<string> v; 16 string t, s; 17 int n; 18 cin >> n; 19 getchar(); 20 while (n--) 21 { 22 getline(cin, s); 23 t = s; 24 //反轉字符串,用來判斷字符是否對稱 25 reverse(t.begin(), t.end()); 26 if (t == s) 27 {
28 v.push_back(s); 29 } 30 } 31 sort(v.begin(), v.end(), Comp); 32 for (int i = 0; i<v.size(); i++) 33 { 34 cout << v[i] << endl; 35 } 36 return 0; 37 }

vector可以當作一個動態數組用,遍歷的時候也可以當做是一個數組,因為可以隨機訪問,所以可以使用sort等algorithm裏的函數

註意:下次如果遇到關於字符串倒轉問題時首先考慮翻轉reverse;

還有(1)?(2):(3)的意思,1式為判斷,true返回2式,flase返回3式

?:,reverse,vector的基本小結