給定含有n個小寫字母的n個字符串(n<=26),找出每個字母的“歸屬”例如:4個字符串①"ac" ②"acd" ③"cbd" ④"a"顯然字母b只在③中出現,那么我們說③屬于b,輸出③->b;現在③已被b占有,d在剩下三個字符串中只在②中出現了,所以②屬于d,c在剩下的①④中只在①中出現,那么①屬于c,最后剩下a和④,則順理成章地④屬于a若解不唯一,比如:①"ac" ②"acd" ③"cbd" ④"ab"既可以①->a ②->d ③->c ④->b 也可以 ①->c ②->a ③->d ④->b則輸出一組即可請問如何實現?
1 回答

皈依舞
TA貢獻1851條經驗 獲得超3個贊
哈哈哈,一樣的題目。我試著說下我的想法,不對的地方請指教。首先將4個字符串的所有字符遍歷出來,然后放到一個map集合里key和value分別為字符以及對應出現的次數如
①"ac"
②"acd"
③"cbd"
④"a"
得到的為a=3,b=1,c=3,d=2,
然后將值為1的key(b)找到對應的字符串,即3,則③已被b占有
遍歷3,相應減去3的字符次數
得到的為a=3,b=0,c=2,d=1,
然后將值為1的key(d)找到對應的字符串,即1,則②已被d占有
遍歷2,相應減去2的字符次數
得到的為a=2,b=0,c=1,d=0,
。。。。大致就這樣。望采納
添加回答
舉報
0/150
提交
取消