問題描述:
在給定字串中找出單詞( 「單詞」由大寫字母和小寫字母字元構成,其他非字母字元視為單詞的間隔,如空格、問號、數字等等;另外單個字母不算單詞);找到單詞後,按照長度進行降序排序,(排序時如果長度相同,則按出現的順序進行排列),然後輸出到乙個新的字串中;如果某個單詞重複出現多次,則只輸出一次;如果整個輸入的字串中沒有找到單詞,請輸出空串。輸出的單詞之間使用乙個「空格」隔開,最後乙個單詞後不加空格。
要求實現函式:
void my_word(charinput, char output)
【輸入】 char input, 輸入的字串
【輸出】 char output,輸出的字串
【返回】 無 示例
輸入:charinput="some local buses, some1234123drivers" ,
輸出:charoutput="drivers local buses some"
輸入:charinput="%a^123 t 3453i*()" ,
輸出:charoutput=""
#include #include #include #include #include #include #include #include using namespace std;
bool cmp(string a,string b)
void my_word(char input, char output)
stringstream ss(s);
string tmp;
vectorvec;
while(ss>>tmp)
stable_sort(vec.begin(),vec.end(),cmp);
vector::iterator ite=unique(vec.begin(),vec.end());
string re="";
for(vector::iterator it=vec.begin();it!=ite;it++)
if(re.size()==0){output[0]='\0';cout<
2013華為校園招聘上機題
題目描述 60分 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串過濾程式,若字串中出現多個相同的字元,將非首次出現的字元過濾掉。比如字串 abacacde 過濾結果為 abcde 要求實現函式 void stringfilter const char pinputstr,long li...
華為2013校園招聘上機筆試題
上機時間兩小時,3道題 1 字串轉換 問題描述 將輸入的字串 字串僅包含小寫字母 a 到 z 按照如下規則,迴圈轉換後輸出 a b,b c,y z,z a 若輸入的字串連續出現兩個字母相同時,後乙個字母需要連續轉換2次。例如 aa 轉換為 bc,zz 轉換為 ab 當連續相同字母超過兩個時,第三個出...
華為2013校園招聘上機筆試題
上機時間兩小時,3道題 1 字串轉換 問題描述 將輸入的字串 字串僅包含小寫字母 a 到 z 按照如下規則,迴圈轉換後輸出 a b,b c,y z,z a 若輸入的字串連續出現兩個字母相同時,後乙個字母需要連續轉換2次。例如 aa 轉換為 bc,zz 轉換為 ab 當連續相同字母超過兩個時,第三個出...