Menu
CoddyTech

Permutation in String

Permutasi sebuah string menggunakan huruf yang sama dalam urutan apa pun, masing-masing sebanyak kemunculannya dalam string asli: tar, rat, dan art adalah permutasi satu sama lain. Kamu mendapatkan dua string s1 dan s2 yang terdiri dari huruf kecil bahasa Inggris. Kembalikan true jika salah satu permutasi s1 muncul dalam s2 sebagai substring (rangkaian karakter yang berurutan), dan false jika tidak.

Fungsi

checkInclusion(s1: string, s2: string) → boolean
s1string
huruf-huruf yang harus disusun ulang
s2string
string yang akan dicari
Mengembalikanboolean
true jika sebuah substring dari s2 merupakan penyusunan ulang s1

Batasan

  • 1 ≤ s1.length ≤ 2 × 104
  • 1 ≤ s2.length ≤ 5 × 104
  • s1 dan s2 hanya berisi huruf kecil bahasa Inggris (a sampai z).
  • s1 bisa lebih panjang daripada s2.

Contoh

Input
s1 = "tar"s2 = "smartphone"
Output
true
Penjelasan
Substring art pada indeks 2 hingga 4 dari smartphone berisi satu a, satu r, dan satu t, huruf yang sama dengan tar.
challenge icon

Pertanyaan lanjutan

Bisakah kamu mengembalikan setiap indeks tempat permutasi s1 dimulai di dalam s2, dengan waktu tetap O(m + n)?

Reset kode
def checkInclusion(s1, s2):
    # Tulis kodemu di sini

Tes #1

Tes #2

Tes #3

Argumen

s1 = "tar"
s2 = "smartphone"

Output yang diharapkan

true