假設我有一個值的向量,它表示分類(bin)值的類的上邊界。矢量{1,3,5,10}表示箱[0,1 [,[1,3],[3,5 [和[5,10]。如何在常量時間內對這些類中的一個(0,1,2,3)實現隨機值V的分類?一旦V超過垃圾箱的上限,走邊界清單並停止,這是微不足道的;但是這是O(n)和箱子的數量;我期待在不變的時間做到這一點。值的恆定時間分組
我以爲在實際輸入代碼之前,通過設置一個查找表,將每個V除以某個值(取決於類邊界),然後使用該分割的(圓角)結果來查找在查找表中的bin號碼。但是我發現它比我想象的要難得多,儘量使查找表的大小盡可能小,同時仍然準確,無論bin邊界之間的比例距離如何;並以一種適用於所有實際價值的方式。通過Google,我只能找到確定垃圾箱邊界的算法,至少使用我所做的術語。
如果這實際上是一個關於隨機抽樣的問題,請在Google中搜索別名方法。 –
我剛剛得知倒轉方括號也表示排除元素。看看它們是否像這樣彼此相鄰是相當痛苦的(與[0,1]相比,這意味着相同)。 – Dukeling