Menu
CoddyTech

Sort Colors

Kamu mendapatkan sebuah array nums yang setiap nilainya adalah 0, 1, atau 2: tiga warna, seperti merah, putih, dan biru. Susun ulang array tersebut agar semua angka 0 berada di awal, lalu semua angka 1, kemudian semua angka 2, dan kembalikan array tersebut. Selesaikan tanpa fungsi pengurutan dari library.

Fungsi

sortColors(nums: integer-array) → integer-array
numsinteger-array
warnanya, masing-masing bernilai 0, 1, atau 2
Mengembalikaninteger-array
nilai yang sama dengan semua 0 terlebih dahulu, lalu semua 1, kemudian semua 2

Batasan

  • 1 ≤ nums.length ≤ 1.5 × 104
  • Setiap nums[i] bernilai 0, 1 atau 2.
  • Satu warna mungkin tidak ada, dan array mungkin hanya berisi satu warna.

Contoh

Input
nums = [2, 1, 0, 2, 0, 1, 1]
Output
[0, 0, 1, 1, 1, 2, 2]
Penjelasan
array tersebut berisi dua angka 0, tiga angka 1, dan dua angka 2, jadi hasilnya persis seperti itu: dua angka 0, lalu tiga angka 1, lalu dua angka 2.
challenge icon

Pertanyaan lanjutan

Apa yang akan kamu ubah jika ada k warna, bukan tiga, dengan k jauh lebih kecil daripada panjang array?

Reset kode
def sortColors(nums):
    # Tulis kodemu di sini

Tes #1

Tes #2

Tes #3

Argumen

nums = [2, 1, 0, 2, 0, 1, 1]

Output yang diharapkan

[0, 0, 1, 1, 1, 2, 2]