Computer >> Máy Tính >  >> Lập trình >> Python

Mã Python để in các ký tự chung của hai Chuỗi theo thứ tự bảng chữ cái

Hai chuỗi nhập liệu của người dùng được đưa ra, nhiệm vụ của chúng tôi là in tất cả các ký tự thông dụng theo thứ tự bảng chữ cái.

Ví dụ

Input:
string1: python
string2: program
Output: op

Giải thích

Các chữ cái thường gặp giữa hai chuỗi là o (1 lần), p (1 lần)

Thuật toán

Step 1: first we take two input string.
Step 2: next we will do to convert these two strings into counter dictionary.
Step 3: Now find common elements between two strings using intersection ( ) property.
Step 4: Resultant will also be a counter dictionary having common elements as keys and their common frequencies as value.
Step 5: Use elements () method of the counter dictionary to expand the list of keys by their frequency number of times.
Step 6: sort list in ascending order to print a resultant string in alphabetical order.
Step 7: join characters without space to produce resultant string.

Mã mẫu

from collections import Counter
def common(str1,str2):
   d1 = Counter(str1)
   d2 = Counter(str2)
   cdict = d1 & d2
   if len(cdict) == 0:
      print -1
   return
   cchars = list(cdict.elements())
   cchars = sorted(cchars)
   print ("Common characters are ::>",''.join(cchars) )
      # Driver program
   if __name__ == "__main__":
      s1 = input("Enter first string")
      s2 = input("Enter second string")
common(s1, s2)

Đầu ra

Enter first string python
Enter second string program
Common characters are ::> op