Menu
CoddyTech

Alien Dictionary

Sebuah daftar kata diurutkan berdasarkan alfabet yang tidak kamu ketahui: 26 huruf kecil bahasa Inggris dalam urutan rahasia tertentu. Kata-kata dibandingkan seperti biasa. Posisi pertama tempat dua kata berbeda menentukan urutannya, dan jika salah satu kata merupakan awalan kata lainnya, kata yang lebih pendek berada lebih dahulu.

Kembalikan huruf-huruf yang muncul dalam kata-kata tersebut sebagai satu string dalam urutan alfabet. Jika ada beberapa urutan yang cocok, kembalikan urutan yang muncul lebih dahulu dalam urutan kamus biasa. Jika tidak ada urutan yang cocok, kembalikan "invalid".

Fungsi

alienOrder(words: string-array) → string
wordsstring-array
kata-kata, diurutkan berdasarkan alfabet yang tidak diketahui
Mengembalikanstring
huruf-huruf dalam urutan terkecil yang sesuai, atau "invalid"

Batasan

  • 1 ≤ words.length ≤ 5000
  • 1 ≤ words[i].length ≤ 10
  • Setiap kata hanya berisi huruf kecil bahasa Inggris.
  • Kata yang sama mungkin muncul lebih dari sekali.

Contoh

Input
words = ["tea", "ten", "ate", "act", "cat"]
Output
"etacn"
Penjelasan
tea sebelum ten menempatkan a sebelum n. Pasangan lainnya menghasilkan t sebelum a, t sebelum c, dan a sebelum c. Tidak ada aturan yang menyebut e, jadi urutan terkecil dimulai dengannya: e, t, a, c, n.
challenge icon

Pertanyaan lanjutan

Bagaimana kamu mengetahui apakah urutan pemasangan itu satu-satunya?

Reset kode
def alienOrder(words):
    # Tulis kodemu di sini

Tes #1

Tes #2

Tes #3

Argumen

words = ["tea", "ten", "ate", "act", "cat"]

Output yang diharapkan

"etacn"