[發明專利]一種通用的樹形結構存儲解析方法有效
| 申請號: | 201710191450.7 | 申請日: | 2017-03-28 |
| 公開(公告)號: | CN107092659B | 公開(公告)日: | 2021-05-28 |
| 發明(設計)人: | 傅玉生;楊毅 | 申請(專利權)人: | 成都優易數據有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22 |
| 代理公司: | 成都弘毅天承知識產權代理有限公司 51230 | 代理人: | 李春芳 |
| 地址: | 611730 四川省成都市郫縣德源鎮(菁*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 通用 樹形 結構 存儲 解析 方法 | ||
1.一種通用的樹形結構存儲解析方法,其特征在于,包括
步驟1、通過臨時變量循環遍歷由層級關聯數據生成的數據列表,讀取數據列表的根數據,利用數據列表中樹節點特征,結合臨時數據集合構建閾值條件,對符合閾值條件的樹節點按序遞增設定樹編碼,再將數據列表中當前樹節點對應樹編碼存入臨時數據集合,在循環結束時,獲得數據列表完整的樹形臨時數據集合;
步驟2、對應根數據查找臨時數據集合,獲得樹形結構的根樹節點和所有子樹節點;
其中,所述的步驟1,包括以下步驟:
步驟1.1、定義在每一層級中對應每個樹節點數據的屬性為唯一的序號和樹編碼;
步驟1.2、預設并讀取由層級關聯數據生成的數據列表;
步驟1.3、創建結果列表、具有樹編碼為鍵值且樹節點為值的數據的臨時數據集合和用于對應每個樹節點序號循環遍歷的臨時變量;
步驟1.4、判斷當前臨時變量是否小于數據列表的序列長度,若當前臨時變量小于數據列表的序列長度,則進行步驟1.5,若當前臨時變量大于等于數據列表的序列長度,則將當前樹節點的數據返回至結果列表并結束;
步驟1.5、獲取當前臨時變量對應數據列表中的當前樹節點,判斷臨時數據集合中是否包含對應當前樹節點樹編碼鍵值的樹節點的值,若包含所述樹節點的值,取出臨時數據集合樹節點的值,再設置當前樹節點的值為臨時數據集合樹節點的值,對當前臨時變量增加單位量后返回更新后的臨時變量至步驟1.4,若未包含所述樹節點的值,則進行步驟1.6;
步驟1.6、將當前樹節點加入臨時數據集合中,判斷當前樹節點的樹編碼長度是否等于層級閾值,若等于層級閾值,則將當前樹節點加入結果列表,若不等于層級閾值,則進行步驟1.7;
步驟1.7、判斷當前樹節點的樹編碼長度是否大于層級閾值,若小于層級閾值,對當前臨時變量增加單位量后返回更新后的臨時變量至步驟1.4,若大于層級閾值,則進行步驟1.8;
步驟1.8、將當前樹節點樹編碼更新為長度減層級閾值的樹節點,從臨時數據集合中取出更新后樹編碼所對應樹節點的子節點列表,將當前樹節點加入子節點列表中后,對當前臨時變量增加單位量后返回更新后的臨時變量至步驟1.4,若更新后樹編碼所對應樹節點的值為空,則進行步驟1.9;
步驟1.9、創建新樹節點并設置新樹節點的樹編碼為步驟1.8更新后的樹編碼,再將當前樹節點更新為新樹節點并作為新的當前樹節點,將更新后樹編碼為鍵值且新樹節點為值的數據存入臨時數據集合,然后再次判斷更新后樹編碼長度是否等于層級閾值,若等于層級閾值,將新樹節點的數據加入結果列表,對當前臨時變量增加單位量后返回更新后的臨時變量至步驟1.4,若不等于層級閾值,則進行步驟1.7。
2.根據權利要求1所述的一種通用的樹形結構存儲解析方法,其特征在于,所述的步驟1,還包括在結果列表中刪除數據,具體為刪除數據對應的樹節點和以所述樹節點的樹編碼為前綴樹編碼的所有樹節點。
3.根據權利要求1所述的一種通用的樹形結構存儲解析方法,其特征在于,所述的步驟2,利用LIKE語句進行讀取操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都優易數據有限公司,未經成都優易數據有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710191450.7/1.html,轉載請聲明來源鉆瓜專利網。





