map集合練習:
"asfefxaacf34vrfdfse2-2asd--wdd"獲取該字串中,每乙個字母出現的次數
要求列印的結果是:a(2)c(1)...;
思路:
對結果分析發現,結果中字母和出現次數之間構成對映關係,而且很多,
很多就需要儲存。能儲存對映關係的有陣列和map集合。
關係中有一方順序固定麼?沒有,所以選有map集合。
又發現可以作為唯一標識的一方有自然順序,即字母表的順序;
所以選有treemap儲存。
集合中最終儲存的是以字母為鍵,以字母出現次數為值的對映關係。
1.因為操作的是字元,所以先把字串轉化成字元陣列。
2.遍歷字元陣列,分別以字母為鍵去map集合中判斷,集合中是否包含該元素,
如果不包含,則以該字母為鍵,以1為值,存入map集合中;
如果包含,則取出該字母對應的值,加一,再把該字母和新的值存入集合,這樣新的值就會覆蓋舊的值。
3.遍歷完畢,每個字母對應的值便是其在該字串中出現的次數,
在對集合進行列印輸出即可。
1public
class
maptest 9//
定義實現統計字母出現次數的靜態方法
10public
static
string countchar(string str)
24return
printmap(tm);25}
26//
定義按規格列印集合的方法
27private
static string printmap(maptm)
36return
sb.tostring();37}
38 }
使用map統計字元出現次數
用於查詢map中是否包含某個關鍵字條目,傳入的引數是要查詢的key,最後返回乙個迭代器,如果沒有找到,則返回的迭代器等於end 返回的迭代器。include include includeusing namespace std int main 主要有四種,參考 主要使用 map.insert pa...
使用Map統計隨機數出現的次數
使用map統計隨機數出現的次數 題 統計隨機數字出現的次數,以及出現次數最多的數字和次數分別是多少?解答 import j a.util.public class mapcountwords else for map.entryentry map.entryset 計算最大的次數 collectio...
集合框架 Map集合
map集合 同collection,是集合框架中的頂層介面。一次新增一對元素,collection一次新增乙個元素。所有,map集合也稱為雙列集合,collection集合稱為單列集合。介面map key是鍵,value是值,其實map集合中儲存的就是鍵值對,map集合中必須保證鍵的唯一性。常用方法...