0Pricing
Coding Interview Prep · Pelajaran

Menemukan Indeks, Bukan Hanya Nilai

Melacak posisi dengan enumerate

Menemukan Indeks, Bukan Hanya Nilai adalah pelajaran Coding Interview Prep gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Coding Interview Prep, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Coding Interview Prep mencakup 4 pelajaran total.

Posisi Itu Penting

Sering kali jawabannya bukan nilainya, melainkan di mana nilai itu berada. Soal pemrograman kompetitif sering meminta indeks berbasis 1 atau berbasis 0, jadi lacaklah posisinya.

a = [4, 1, 7, 3]

Temukan dengan .index()

a.index(x) mengembalikan posisi kemunculan pertama yang cocok. Penulisannya singkat, tetapi metode ini memindai dari kiri ke kanan dalam O(n).

pos = a.index(7)  # 2

Nilai yang Hilang Menimbulkan Kesalahan

Jika nilainya tidak ada, .index() menimbulkan ValueError, yang menyebabkan program berhenti saat berjalan. Periksa keanggotaan terlebih dahulu jika Anda tidak yakin.

if x in a:
    pos = a.index(x)

Lakukan Perulangan dengan enumerate

enumerate memberikan indeks dan nilai sekaligus pada setiap langkah, cara yang rapi untuk melacak posisi saat memindai.

for i, v in enumerate(a):
    print(i, v)

Mulai enumerate dari Satu

Banyak juri menginginkan posisi berbasis 1. Berikan start=1 kepada enumerate agar indeks pertama bernilai 1, sesuai dengan pernyataan soal.

for i, v in enumerate(a, start=1):
    ...

Indeks Nilai Maksimum

Untuk menemukan di mana nilai maksimum berada, pindai larik dan simpan indeks terbaik, karena max(a) saja hanya memberikan nilainya.

best = 0
for i, v in enumerate(a):
    if v > a[best]:
        best = i

argmax yang Praktis

Trik ringkas: pasangkan setiap indeks dengan nilainya, lalu ambil nilai maksimum berdasarkan nilai. Rentang tersebut langsung memberikan posisinya.

best = max(range(len(a)), key=lambda i: a[i])

Kumpulkan Semua Indeks yang Cocok

Memerlukan setiap posisi suatu nilai? Gunakan comprehension atas enumerate untuk mengumpulkan semua kecocokan dalam satu baris.

idx = [i for i, v in enumerate(a) if v == 7]

Petakan Nilai ke Indeks

Untuk pencarian berulang, buat dict dari nilai ke indeks sekali saja, sehingga setiap pencarian berikutnya menjadi akses O(1).

where = {v: i for i, v in enumerate(a)}

Duplikat Memerlukan Perhatian

Dict dari nilai ke indeks hanya menyimpan kemunculan terakhir. Gunakan satu daftar untuk setiap kunci, atau gunakan enumerate, jika duplikat penting.

where = {}
for i, v in enumerate(a):
    where.setdefault(v, []).append(i)

Konversi Antar-Basis Indeks

Perhatikan basis: jika Anda menyimpan indeks berbasis 0 tetapi harus mencetak indeks berbasis 1, tambahkan satu. Mencampur basis merupakan jebakan jawaban salah yang sulit terlihat.

print(pos + 1)  # 0-based to 1-based

Pemeriksaan Singkat

Anda ingin mendapatkan posisi berbasis 1 saat melakukan perulangan. Apa yang harus Anda tulis?

Ringkasan: Lacak Posisi

Sekarang Anda dapat menemukan satu indeks, indeks maksimum, dan semua indeks, serta memetakan nilai ke posisi dengan aman. enumerate adalah pelacak posisi yang andal. 🎯

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Menemukan Indeks, Bukan Hanya Nilai” gratis?

Ya — teks lengkap “Menemukan Indeks, Bukan Hanya Nilai” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Coding Interview Prep, upgrade ke CoddyKit PRO. Kursus Coding Interview Prep mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Menemukan Indeks, Bukan Hanya Nilai”?

Melacak posisi dengan enumerate Kamu berlatih Coding Interview Prep dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Coding Interview Prep?

Tidak diperlukan pengalaman sebelumnya. Coding Interview Prep di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Menemukan Indeks, Bukan Hanya Nilai” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Coding Interview Prep ini?

Ya. Setiap pelajaran Coding Interview Prep menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. List, Pengindeksan & Slicing untuk CP
  2. Membangun Array dengan Cepat lewat Comprehension
  3. Min, Max, Sum & Total Berjalan
  4. Menemukan Indeks, Bukan Hanya Nilai
← Kembali ke Coding Interview Prep