LeetCode1002. 查詢常用字元(雜湊表、count)
1、題目描述
https://leetcode-cn.com/problems/find-common-characters/
給定僅有小寫字母組成的字串陣列 A,返回列表中的每個字串中都顯示的全部字元(包括重複字元)組成的列表。
例如,如果一個字元在每個字串中出現 3 次,但不是 4 次,則需要在最終答案中包含該字元 3 次。
你可以按任意順序返回答案。
輸入:["bella","label","roller"]
輸出:["e","l","l"]
輸入:["cool","lock","cook"]
輸出:["c","o"]
1 <= A.length <= 100
1 <= A[i].length <= 100
A[i][j]
是小寫字母
2、程式碼詳解
class Solution(object):
def commonChars(self, A):
"""
:type A: List[str]
:rtype: List[str]
"""
from collections import Counter
ans = Counter(A[0])
for i in A[1:]:
ans &= Counter(i)
return list(ans.elements())
class Solution:
def commonChars(self, A):
if not A:
return []
res = []
for c in set(A[0]):
count = [w.count(c) for w in A]
s = c * min(count) # 如果不是每個單詞都有的字母,min(count)=0
for a in s:
res.append(a)
return res
解題思路:hash陣列,統計每個字母出現的次數,求交集。
set()函式,順序會亂,但題目不看順序
class Solution:
def commonChars(self, A: List[str]) -> List[str]:
result = list()
for w in set(A[0]):
count = [x.count(w) for x in A]
a = w * min(count)
for i in a:
result.append(i)
return result
相關文章
- 雜湊技術【雜湊表】查詢演算法 PHP 版演算法PHP
- 查詢演算法及雜湊表演算法
- 【PHP資料結構】雜湊表查詢PHP資料結構
- 字串查詢(字串雜湊)字串
- 雜湊查詢演算法演算法
- 雜湊查詢 兩數之和
- 雜湊表(雜湊表)原理詳解
- 【資料結構】查詢結構(二叉排序樹、ALV樹、雜湊技術雜湊表)資料結構排序
- 雜湊表
- oracle表複雜查詢Oracle
- 資料結構實驗之查詢七:線性之雜湊表資料結構
- 【尋跡#3】 雜湊與雜湊表
- 雜湊表2
- 字串雜湊表字串
- 6.7雜湊表
- 線性表 & 雜湊表
- 十二、雜湊表(二)
- 十一、雜湊表(一)
- 雜湊表應用
- 手寫雜湊表
- 雜湊表的原理
- MySQL優化COUNT()查詢MySql優化
- JAVA 實現 - 雜湊表Java
- freeswitch APR庫雜湊表
- 【閱讀筆記:雜湊表】Javascript任何物件都是一個雜湊表(hash表)!筆記JavaScript物件
- 複雜查詢—子查詢
- Hash,雜湊,雜湊?
- 幾道和雜湊(雜湊)表有關的面試題面試題
- Python中查詢字串某個字元最常用的方法!Python字串字元
- 【資料結構與演算法學習】雜湊表(Hash Table,雜湊表)資料結構演算法
- 資料結構——雜湊表資料結構
- 雜湊表的一點思考
- Python:說說字典和雜湊表,雜湊衝突的解決原理Python
- 七夕也要學起來,雜湊雜湊雜湊!
- 雜湊表:如何實現word編輯器的拼寫檢查?
- 菜鳥學Python之雜湊表Python
- iOS雜湊表快取窺探iOS快取
- Python 雜湊表的實現——字典Python