Apakah MATLAB memiliki dukungan untuk tabel hash?
Beberapa latar belakang
Saya sedang mengerjakan masalah di Matlab yang membutuhkan representasi skala-ruang dari sebuah gambar. Untuk melakukan ini, saya membuat filter Gaussian 2-D dengan varians sigma*s^k
untuk k
beberapa rentang., Dan kemudian saya menggunakan masing-masing secara bergantian untuk memfilter gambar. Sekarang, saya ingin semacam pemetaan dari k
ke gambar yang difilter.
Jika k
selalu berupa integer, saya cukup membuat array 3D seperti itu:
arr[k] = <image filtered with k-th guassian>
Namun, k
belum tentu merupakan bilangan bulat, jadi saya tidak bisa melakukan ini. Apa yang saya pikirkan untuk dilakukan adalah menyimpan array k
seperti itu:
arr[find(array_of_ks_ = k)] = <image filtered with k-th guassian>
Yang tampaknya cukup bagus pada awalnya, kecuali saya akan melakukan pencarian ini secara potensial beberapa ribu kali dengan sekitar 20 atau 30 nilai k
, dan saya khawatir ini akan merusak kinerja.
Saya ingin tahu apakah saya tidak akan lebih baik melakukan ini dengan tabel hash semacam itu sehingga saya akan memiliki waktu pencarian yaitu O (1) daripada O (n).
Sekarang, saya tahu bahwa saya seharusnya tidak mengoptimalkan sebelum waktunya, dan saya mungkin tidak memiliki masalah ini sama sekali, tetapi ingat, ini hanya latar belakang, dan mungkin ada kasus di mana ini benar-benar solusi terbaik, terlepas dari apakah itu solusi terbaik untuk masalah saya .