Ilmu Komputer

T&J untuk siswa, peneliti, dan praktisi ilmu komputer



29
Mengapa menuliskan bukti matematis lebih banyak bukti kesalahan daripada menulis kode komputer?
Saya telah memperhatikan bahwa saya merasa jauh lebih mudah untuk menuliskan bukti matematika tanpa membuat kesalahan, daripada menuliskan program komputer tanpa bug. Sepertinya ini adalah sesuatu yang lebih luas dari sekedar pengalaman saya. Kebanyakan orang membuat bug perangkat lunak setiap saat dalam pemrograman mereka, dan mereka memiliki kompiler untuk memberi …


3
Apakah ada sistem di balik keajaiban analisis algoritma?
Ada banyak pertanyaan tentang bagaimana menganalisis waktu berjalan algoritma (lihat, misalnya, analisis runtime dan analisis algoritma ). Banyak yang serupa, misalnya yang meminta analisis biaya loop bersarang atau algoritma Divide & Conquer, tetapi sebagian besar jawaban tampaknya dibuat khusus. Di sisi lain, jawaban untuk pertanyaan umum lainnya menjelaskan gambaran yang …

12
Mengapa, benar-benar, Masalah Pemutusan begitu penting?
Saya tidak mengerti mengapa Masalah Pemutusan sering digunakan untuk mengabaikan kemungkinan menentukan apakah suatu program terhenti. Wikipedia [artikel] [1] dengan benar menjelaskan bahwa mesin deterministik dengan memori yang terbatas akan menghentikan atau mengulangi keadaan sebelumnya. Anda dapat menggunakan algoritme yang mendeteksi apakah daftar yang ditautkan loop untuk mengimplementasikan Fungsi Pemutusan …


12
Mengapa ada begitu banyak bahasa pemrograman?
Saya cukup lancar dalam C / C ++, dan dapat berjalan di berbagai bahasa scripting (awk / sed / perl). Saya sudah mulai menggunakan python lebih banyak karena menggabungkan beberapa aspek bagus dari C ++ dengan kemampuan scripting dari awk / sed / perl. Tetapi mengapa ada begitu banyak bahasa …

14
Mengapa saya dapat melihat grafik dan segera menemukan titik terdekat ke titik lain, tetapi butuh saya O (n) waktu melalui pemrograman?
Izinkan saya mengklarifikasi: Diberikan sebaran beberapa titik tertentu n, jika saya ingin menemukan titik terdekat dengan titik mana pun dalam plot secara mental, saya dapat langsung mengabaikan sebagian besar titik dalam grafik, mempersempit pilihan saya ke beberapa titik kecil yang konstan di sekitar . Namun, dalam pemrograman, diberikan satu set …


4
Bagaimana cara mengubah automata terbatas ke ekspresi reguler?
Mengubah ekspresi reguler menjadi (minimal) NFA yang menerima bahasa yang sama adalah mudah dengan algoritma standar, misalnya algoritma Thompson . Namun, arah yang lain tampaknya lebih membosankan, dan terkadang ekspresi yang dihasilkannya berantakan. Algoritma apa yang ada untuk mengubah NFA menjadi ekspresi reguler yang setara? Apakah ada keuntungan terkait kompleksitas …

6
Mengapa belum ada algoritma enkripsi yang didasarkan pada masalah NP-Hard yang diketahui?
Sebagian besar enkripsi saat ini, seperti RSA, bergantung pada faktorisasi bilangan bulat, yang tidak diyakini sebagai masalah NP-keras, tetapi milik BQP, yang membuatnya rentan terhadap komputer kuantum. Saya bertanya-tanya, mengapa belum ada algoritma enkripsi yang didasarkan pada masalah NP-hard yang dikenal. Kedengarannya (setidaknya dalam teori) seperti itu akan membuat algoritma …

13
Bagaimana mengelabui heuristik "coba beberapa kasus uji": Algoritma yang tampak benar, tetapi sebenarnya salah
Untuk mencoba menguji apakah suatu algoritma untuk beberapa masalah sudah benar, titik awal yang biasa adalah mencoba menjalankan algoritme dengan tangan pada sejumlah kasus uji sederhana - cobalah beberapa contoh contoh masalah, termasuk beberapa "kasus sudut" sederhana. ". Ini adalah heuristik yang hebat: ini adalah cara yang bagus untuk dengan …



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.