[发明专利]生成唯一标识符的方法、系统及电子装置在审
| 申请号: | 202211085579.7 | 申请日: | 2022-09-06 |
| 公开(公告)号: | CN115481293A | 公开(公告)日: | 2022-12-16 |
| 发明(设计)人: | 刘桐 | 申请(专利权)人: | 海尔优家智能科技(北京)有限公司;青岛海尔科技有限公司;海尔智家股份有限公司 |
| 主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F8/41 |
| 代理公司: | 北京瀚仁知识产权代理事务所(普通合伙) 11482 | 代理人: | 陈敏 |
| 地址: | 100029 北京市西城区北三*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 生成 唯一 标识符 方法 系统 电子 装置 | ||
本申请公开了一种生成唯一标识符的方法、系统及电子装置,涉及智能家居/智慧家庭技术领域,其中一种生成唯一标识符的方法,包括:基于目标文件生成抽象语法树;获取抽象语法树中的所有标识符节点;基于所述标识符的自身信息以及散列算法得到第一散列值;将所述标识符的名称改为所述第一散列值。通过抽象语法树遍历所有标识符,之后通过标识符的自身信息以及散列算法得到融合标识符多种信息的第一散列值,避免了标识符重复的问题。规范了相关的标识符名称,使之后再进行散列计算的时候不会引起哈希冲突,减少了出现意外的风险,提高了系统的稳定性。
技术领域
本申请涉及数据存储技术领域,具体而言,涉及一种生成唯一标识符的方法、系统及电子装置。
背景技术
现如今随着软件开发中功能逻辑的复杂化程度的剧增,现有计算机领域中常用的数据结构陆续暴露了很多的问题。现有的数据结构是采用“堆栈”的方式,即“先进后出”的方式。堆栈的方式有很大的读取上的缺陷。例如在现有技术中,在进行无序的数据索引的情况下,使用传统的堆栈的方式的话此时对于查找时间的复杂度是O(n),插入的复杂度是O(1),其中查找相比于插入效率就慢了很多,这对于软件层面上的执行来说效率是低下的,尤其是涉及到需要快速读取和频繁读取的工作中。
对应上述问题,公开号为CN112948642的中国专利文献公开了一种嵌入式哈希表,其中,包括链接法哈希表与双向链表;所述双向链表包括若干用于存储key键值的键值结点,所述链接法哈希表包括若干用于存储value数据的链接结点;各个键值结点之间均为双向连接,且每个键值结点与对应的链接结点之间为双向连接。基于散列函数计算key键值对应的哈希码,读取哈希码对应的链接结点。上述专利通过将哈希表与双向链表的结合,从而简化了逻辑,相对于堆栈来说,上述专利文献中公开的技术可以将将查找的时间复杂度从O(n)降低至O(1)。
但是上述文件中“基于散列函数计算key键值对应的哈希码,读取哈希码对应的链接结点”中没有考虑key键值可能会相同的问题,这样就一定会在实际的应用中造成哈希冲突,导致在链表数据读取的时候发生错误,从而影响整个操作的流程。
相应的,本领域需要一种新的数据结构来解决上述问题。
发明内容
为了克服上述缺陷,提出了本发明,以提供解决或至少部分地解决现有技术中标识符重复产生的容易发生哈希冲突的问题。
在第一方面,本发明提供一种生成唯一标识符的方法,所述方法包括:
基于目标文件生成抽象语法树;
获取抽象语法树中的所有标识符节点;
基于所述标识符的自身信息以及散列算法得到第一散列值;
将所述标识符的名称改为所述第一散列值。
进一步的,所述标识符的自身信息包括标识符的名称以及相应的统一资源标识符;
所述基于所述标识符的自身信息以及散列算法得到第一散列值,包括:
基于所述标识符的名称和相应的统一资源标识符以及散列算法得到第一散列值。
进一步的,所述获取抽象语法树中的所有标识符节点包括:
通过对抽象语法树进行深度遍历,找出所有的标识符。
进一步的,所述基于所述标识符的名称和相应的统一资源标识符以及散列算法得到第一散列值,包括:
将标识符名称通过散列算法得到第二散列值;
将标识符统一资源标识符通过散列算法得到第三散列值;
基于第二散列值与第三散列值得到第一散列值。
进一步的,所述基于所述标识符的名称和相应的统一资源标识符以及散列算法得到第一散列值,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海尔优家智能科技(北京)有限公司;青岛海尔科技有限公司;海尔智家股份有限公司,未经海尔优家智能科技(北京)有限公司;青岛海尔科技有限公司;海尔智家股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211085579.7/2.html,转载请声明来源钻瓜专利网。





