Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ค้นหาอักขระในสตริงแรกที่มีอยู่ในดัชนีต่ำสุดในสตริงที่สองในPython


สมมติว่าเรามี string str และ string patt อื่น เราต้องหาตัวกำหนดใน patt ที่มีอยู่ที่ดัชนีต่ำสุดของ str หากไม่มีอักขระ patt1 ใน str1 ให้คืนค่า -1

ดังนั้น หากอินพุตเป็นเหมือน str ="helloworld" และ patt ="wor" ผลลัพธ์จะเป็น 'o' เนื่องจาก 'o' มีอยู่ที่ดัชนีต่ำสุดในหน่วย str

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • สำหรับฉันอยู่ในช่วง 0 ถึงขนาดของ patt ทำ

    • สำหรับ j ในช่วง 0 ถึงขนาดของ Str ให้ทำ

      • ถ้า patt[i] เหมือนกับ Str[j] และ j

        • ดัชนีขั้นต่ำ :=เจ

        • ออกจากวง

  • ถ้า maximum_index ไม่เหมือนกับ 10^9 แล้ว

    • คืนค่า Str[minimum_index]

  • มิฉะนั้น

    • กลับ -1

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

def get_min_index_char(Str, patt):
   minimum_index = 10**9
   for i in range(len(patt)):
      for j in range(len(Str)):
         if (patt[i] == Str[j] and j < minimum_index):
            minimum_index = j
            break
   if (minimum_index != 10**9):
      return Str[minimum_index]
   else:
      return -1
Str = "helloworld"
patt = "wor"
print(get_min_index_char(Str, patt))

อินพุต

"helloworld", "wor"

ผลลัพธ์

o