Tinjau sebelum menerapkan
Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Kelompokkan simpul bernomor melalui hubungan tak berarah dengan himpunan terpisah.
def components(count, edges):
if type(count) is not int or not 0 <= count <= 10000:
raise ValueError("node count")
pairs = list(edges)
for pair in pairs:
if len(pair) != 2 or any(type(v) is not int or not 0 <= v < count for v in pair):
raise ValueError("edge endpoint")
parent = list(range(count))
def find(x):
while parent[x] != x:
parent[x] = parent[parent[x]]
x = parent[x]
return x
for a, b in pairs:
parent[find(b)] = find(a)
groups = {}
for node in range(count): groups.setdefault(find(node), []).append(node)
return sorted(groups.values())Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.
Uji simpul terisolasi, sisi berulang dan graf kosong, lalu tolak ujung tidak valid sebelum penggabungan.
def components(count, edges):
if type(count) is not int or not 0 <= count <= 10000:
raise ValueError("node count")
pairs = list(edges)
for pair in pairs:
if len(pair) != 2 or any(type(v) is not int or not 0 <= v < count for v in pair):
raise ValueError("edge endpoint")
parent = list(range(count))
def find(x):
while parent[x] != x:
parent[x] = parent[parent[x]]
x = parent[x]
return x
for a, b in pairs:
parent[find(b)] = find(a)
groups = {}
for node in range(count): groups.setdefault(find(node), []).append(node)
return sorted(groups.values())UnionPebble adalah ruang kerja pemrograman AI Windows untuk menyatukan persyaratan pengelompokan, kode sumber, dan pengguna hasilnya dalam satu percakapan pengembangan. Mulailah dengan menjelaskan apa yang dianggap terhubung oleh aplikasi dan apa yang diharapkan diterimanya. Minta model memeriksa representasi yang ada sebelum menyarankan perubahan kode pembentuk kelompok.
Untuk tugas konkret, gunakan components.py guna membahas koneksi yang menyatukan dua kelompok yang sebelumnya terpisah. Sertakan simpul terisolasi dalam data uji dan nyatakan urutan keluaran yang diharapkan. Contoh ini membantu merumuskan permintaan perubahan tanpa menganggap koleksi yang setara secara matematis akan memenuhi kebutuhan serializer atau kode tampilan aplikasi.
Tinjau usulan pada batas tersebut. Periksa pengenal simpul yang diterima, sisi tidak valid, dan kasus kosong, lalu jalankan pemeriksaan proyek yang relevan. Hasil yang berguna harus menjelaskan alasan anggota berada dalam kelompok sama sekaligus alasan struktur hasil cocok bagi penggunanya. Jangan sertakan perubahan penyimpanan atau antarmuka yang tidak terkait dalam permintaan untuk memperbaiki perilaku pengelompokan.
Hubungkan model melalui endpoint kompatibel OpenAI atau Anthropic yang didukung, dengan memberikan kredensial bila diperlukan. Jika layanan itu menawarkan model AI abliterated, model tersebut dapat dipilih untuk sesi; batasan tetap bergantung pada penyedia. Alat yang tersedia dan konteks juga bergantung pada model serta server, jadi batasi pemeriksaan pada kode dan bukti yang benar-benar dapat digunakan sesi.
Tetapkan harapan itu secara eksplisit. Daftar sisi mungkin tidak pernah menyebut simpul terisolasi, meskipun aplikasi tetap mengetahui keberadaannya. Sertakan jumlah simpul yang dideklarasikan dan data uji simpul terisolasi agar kode usulan tidak diam-diam membuang entri itu dari hasil.
Ya, jika pengguna hasil bergantung pada urutan serialisasi, perbandingan, atau penyajian yang stabil. Nyatakan apakah urutan bagian dari antarmuka, lalu periksa konvensi keluaran. Kesetaraan matematis sendiri tidak membuktikan kompatibilitas dengan snapshot atau pemrosesan hilir proyek.
Tentukan perilaku penolakan masukan dan periksa tempatnya dilaporkan. Contoh memvalidasi pengenal terhadap jumlah simpul yang dideklarasikan. Tinjau respons pemanggil, bukan menganggap pengecualian saja menyampaikan kesalahan berguna kepada pemberi data pengelompokan.
Tuliskan kelompok awal dan keanggotaan gabungan yang diharapkan secara independen, termasuk kelompok yang tidak terdampak. Jalankan data uji melalui kode yang diubah dan periksa urutan secara terpisah. Ini memberi peninjauan hasil sebelum dan sesudah yang konkret tanpa mengulang implementasi dalam pengujian.
UnionPebble · Diperbarui 2026-10-25