Pemangkasan
Pelajaran 11 dari 15 dalam kursus Dasar-Dasar Pemrograman Dinamis di Coddy.
Pruning adalah teknik untuk mengurangi jumlah komputasi yang diperlukan oleh algoritma pemrograman dinamis dengan menghindari komputasi yang tidak perlu. Caranya adalah dengan menghilangkan cabang tertentu dari pohon rekursif yang tidak akan menghasilkan solusi lebih baik daripada solusi terbaik yang telah ditemukan sejauh ini. Pruning dapat digunakan dalam algoritma pemrograman dinamis top-down maupun bottom-up.
Tantangan
AhliDalam tantangan ini, kamu diberi sebuah matriks bilangan bulat dan sebuah nilai target. Tugasmu adalah memilih satu bilangan bulat dari setiap baris matriks, sehingga selisih absolut antara nilai target dan jumlah bilangan bulat yang dipilih menjadi sekecil mungkin. Kemudian, kamu harus mengembalikan nilai selisih absolut minimum ini.
Coba sendiri
def minimize_difference(mat, target):
# Tulis kodemu di siniSemua pelajaran di Dasar-Dasar Pemrograman Dinamis
3Algoritma pemrograman dinamis
Subsekuens bersama terpanjangMasalah knapsackMasalah penukaran koinJarak editLatihan sendiri: Compiler Python online