劍指offer(34) 第乙個只出現一次的字元

2021-10-23 21:24:30 字數 815 閱讀 6702

一.找出第乙個出現一次字元的位置

enumerate:將可遍歷的資料物件(列表、陣列、字串)組合為索引序列,同時返回資料和下標

def firstnotrepeatingchar(self, s):

# write code here

if s=='':

return -1

for index,val in enumerate(s):

if s.count(val)==1:

return index

return -1

二.找出第乙個出現一次字元

雜湊表

def firstuniqchar(self, s: str) -> str:

if s=='':

return ' '

dic={}

for i in s:

if i in dic:

dic[i]+=1

else:

dic[i]=1

for k in dic:

if dic[k]==1:

return k

return ' '

list.count():統計某個元素在列表**現的次數

def firstuniqchar(self, s: str) -> str:

if s=='':

return ' '

for i in s:

if s.count(i)==1:

return i

return ' '

劍指offer34 第乙個只出現一次的字元

題目描述 在乙個字串 0 字串長度 10000,全部由字母組成 中找到第乙個只出現一次的字元,並返回它的位置,如果沒有則返回 1 需要區分大小寫 建立乙個字典後再便利一遍字串,找第乙個 coding utf 8 class solution def firstnotrepeatingchar sel...

劍指Offer 34 第乙個只出現一次的字元

在字串中找出第乙個只出現一次的字元。如輸入 abaccdeff 則輸出 b 從頭開始掃瞄這個字串中的每個字元,當訪問到某字元時拿這個字元和後面的每個字元相比較,如果在後面沒有發現重複的字元,則該字元技術只出現一次的字元。時間複雜度是o n 2 用乙個容器來存放每個字元的出現次數,根據字元來查詢它出現...

第乙個只出現一次的字元(劍指offer 34)

在乙個字串 0 字串長度 10000,全部由字母組成 中找到第乙個只出現一次的字元,並返回它的位置,如果沒有則返回 1 需要區分大小寫 從0開始計數 最直觀的解法是使用 hashmap 對出現次數進行統計,但是考慮到要統計的字元範圍有限,因此可以使用整型陣列代 替 hashmap,從而將空間複雜度由...