編程題目:對於一個字符串,,請設計一個高效算法,找到第一次重復出現的字符。


這里可是使用hash或者字典這種映射的方式解決問題。

當訪問某字符時,如果該字符可以在字典里面找到,說明他已經在前面出現過了。

 

 1 #!/usr/bin/env python3
 2 
 3 def find_str_repeat(s):
 4         d = {}
 5         for i in range(len(s)):
 6                 if d.get(s[i]):
 7                         return s[i]
 8                 else:
 9                         d[s[i]]= i
10         return False
11 
12 def find_str_repeat1(s):
13         d = {}
14         for i in s:
15                 if d.get(i):
16                         return i
17                 else:
18                         d[i] = i
19         return False
20 
21 if __name__ == "__main__":
22         s = "qywyer23tdd"
23         print(find_str_repeat(s))
24         print(find_str_repeat1(s))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM