**作者 陳東
繼續昨天的問題,分別**兩種解決思路的可行性
先解決分級、秒級編碼的問題。因為二者格式相同,所以應該能夠套用統一方法解決問題。
測試資料 59』59」 ,在+1s的情況下,應得出結果 1° 但在網格運算中 其結果為 59』60」
其層級為 21層(1」) 同時要考慮61」的情況 ,例如 21層級對應跨度30m左右 如果計算該網格東邊1830m處網格 即為61」
解決加減法的問題 首先要研究加減法的當前實現演算法。
此處引用了wupenm的思路
對於分級編碼的運算,若不考慮進製,則正常加法運算。 然後考慮進製,如果大於59,則進1對於二進位制加法運算,若不考慮進製,則1+1=0, 1+0=1, 0+1=1, 0+0=0,通過對比異或,不難發現,此方法與異或類似。因而排除進製,加法可以用異或來實現。
然後考慮進製,0+0的進製是0,1+0的進製為0,只有1+1時進製才為1,該操作與位運算的&操作相似。
對於進製需要重新計算
思路如下:
step 1:正常計算加減法a+b=c;
step 2: 計算度、分的進製,如果有進製,加上4'(4")*進製差(c_degree-a_degree,c_minute-a_minute ) 返回step 1.若無進製,進行step 3
step 3: 判斷分級、秒級編碼是否超過60,如有超過,進行進製運算,進行step 1.如果沒有,則運算結束,返回運算值。
減法同樣適用。
借鑑齊師兄的**思路,通過事先簡歷網格距離矩陣,來計算網格間距離。
通過事先建立的經向、緯向網格距離矩陣 來計算網格間的距離
通過不斷呼叫對應數列中的值 來疊加兩個網格間的距離、
針對不同層級的網格 可以通過該層級的網格寬度進行父子關係運算。
其實質為 預先判斷網格是否為空,而不採取計算的方式 空間換時間je
(cod
e)運算元同樣可以判斷網格是否真實
HBase二 HBase資料模型
hbase是基於google bigtable模型開發的,典型的key value系統 1.hbase schema可以有多個table 2.每個table可由多個column family組成。3.hbase列族中的列可以隨意定義,因為hbase是無模式的。1.byte array 2.表中每條記...
二 關係資料模型
1.關聯式資料庫和關係模式 在關聯式資料庫中,我們用關係來表示實體集和聯絡集,關係通常使用二維表來表示,對應關係名。表的每一列稱為屬性 和er圖中的可以認為是一樣的 每一行可以稱為一條記錄 這裡每個屬性都需要是原子的,這決定了規範的關聯式資料庫中不能有多值屬性和復合屬性。什麼是關係模式?其實關係模式...
第二章 聚合資料模型
nosql技術與傳統的關聯式資料庫相比,最明顯的轉變是拋棄了關係模型。nosql主要有四種模型 前三種都是面向聚合的 2.1 聚合 關係模型 元組 行 是受限的結構 只能包含一系列的值,不能巢狀另外的元組和列表。所有操作都以元組為目標,而且其返回值必須是元組。面向聚合 是nosql運算元據時所用的單...