美團筆試題 字串的分割與排序

2021-10-05 03:03:20 字數 1265 閱讀 9122

生活中經常有需要將多個字串進行排序的需要,比如將美團點評的部分業務名稱(外賣、打車、旅遊、麗人、美食、結婚、旅遊景點、教培、門票、酒店),用拼音表示之後按字母逆序排序。字母逆序指從z到a排序,比如對兩個字串排序時,先比較第乙個字母按字母逆序排z在a的前面,當第乙個字母一樣時再比較第二個字母按字母逆序排,以此類推。特殊情況1)空字串需排在最前面;2)若乙個短字串是另乙個長字串的字首則短字串排在前面。請自行實現**進行排序,直接呼叫sort等排序方法將不得分且視為作弊。

輸入描述:

輸入為一行,由多個字串以英文逗號拼接而成,最多不超過128個字串且可能有重複。每個字串由小寫字母a-z組成,可以為空,最長不超過128個字元。

輸出描述:

輸出一行,為排序之後的字串,用逗號隔開

#include#include#include#includeusing namespace std;

//定義乙個結構題,重寫《執行賦

struct item

bool operator <(const item &a)const

if(name.length() < a.name.length())

return true;

return false;

}

};//將字串line根據字元c分割開

vectorstrsplit(string line,char c)

else

temp = temp + line[i];

i++;

} if(temp.length() > 0)

strarr.push_back(temp);

return strarr;

} //氣泡排序

void bubblesort(vector&mitem) }}

}

int main()

}vectormitem;

for(int i = 0;i < strarr.size();i++)

bubblesort(mitem);

for(int i = 0;i < mitem.size();i++)

return 0;

}

1)本文首先對多行字串根據字條c進行分割,返回vector型別的資料

2)然後通過將字元構造成個體,通過構造體中重寫《運算子,來比較結構體物件的大小;

3)由於題目不准用內建的排序函式,本文採用自定義的氣泡排序法排序;

2018美團筆試字串問題

輸出對應的答案。in aab abaout 2in aaabb babout 5 題解 n o n o n include include include include include include include include include include include include ...

筆試題 字串翻轉 python

將一句話的單詞進行倒置,標點不倒置。比如 i like beijing.經過函式後變為 beijing.like i 輸入描述 每個測試輸入包含1個測試用例 i like beijing.輸入用例長度不超過100 輸出描述 依次輸出倒置之後的字串,以空格分割 輸入例子 i like beijing....

美團2020筆試 字串逆排序

題目描述 將以逗號分隔的輸入字串按z a的順序排序,空字元位於最前面,當乙個字串是另乙個字串的子串時,排在前面。import sys import operator def resort arr n len arr count 0 for i in range n if arr i arr i ar...