原環套原環

2021-09-05 14:52:43 字數 537 閱讀 4168

今天在除錯兄弟的程式的時候發現了乙個問題,就是在組合資料的時候,有些時候可以成功,有些時候失敗,感覺十分奇怪。

功能大概是這樣的,就是在一棵樹上掛資料,所有的節點都可以有資料,不只是葉子的,在組合資料的時候,可以從任意節點取資料,但是不能是重複的資料。

資料可能出現的情況如圖a、b、c所示,圖a是沒有干擾的情況,圖b和圖c主要表示了重複資料出現的可能,乙個是包含,乙個是交叉。

目前採用的辦法是隨機取資料,然後在環中撤出取出的資料,這個時候就有可能取資料失敗,如果陣列在3個環裡邊都有,如果從大環中取資料,把小環的資料取光了,這樣小環就沒有資料可取了。

但是如果通過排序,從小向大來取,在取的過程中從各個環中逐步撤出資料,就不會出現這個情況了。

呵呵,其實道理很簡單,就是先取小範圍的資料,然後取大範圍的資料,這個時候大環已經去掉已經取出的資料了,干擾也就減少了。

現在愁的不是這個演算法了,倒是原先程式寫的爛,不是很容易弄,呵呵。

自定義view原環進度圈

第一view類 package views import android.content.context import android.content.res.typedarray import android.graphics.canvas import android.graphics.pain...

刷題 環套樹 旅行

noip2018 小 y 的旅行方案是這樣的 任意選定乙個城市作為起點,然後從起點開始,每次可以選擇一條與當前城市相連的道路,走向乙個沒有去過的城市,或者沿著第一次訪問該 城市時經過的道路後退到上乙個城市。當小 y 回到起點時,她可以選擇結束這次旅行或 繼續旅行。需要注意的是,小 y 要求在旅行方案...

MongoDB writeConcern原理解析

mongodb支援客戶端靈活配置寫入策略 writeconcern 以滿足不同場景的需求。db.collection.insert mongodb支援的writeconncern選項如下 w 資料寫入到number個節點才向用客戶端確認 j 寫入操作的journal持久化後才向客戶端確認 wtime...