按哈希值Perl的哈希值哈希值排序
发布时间:2020-12-15 21:17:01 所属栏目:大数据 来源:网络整理
导读:我有一个类似于以下的哈希结构: KeyA = { Key1 = { Key4 = 4 Key5 = 9 Key6 = 10 } Key2 = { Key7 = 5 Key8 = 9 } }KeyB = { Key3 = { Key9 = 6 Key10 = 3 } } 我需要通过哈希结构打印遍历路径和遍历结束时的值,以便按值排序. 例如,对于上面的哈希结构,我需
我有一个类似于以下的哈希结构:
KeyA => { Key1 => { Key4 => 4 Key5 => 9 Key6 => 10 } Key2 => { Key7 => 5 Key8 => 9 } } KeyB => { Key3 => { Key9 => 6 Key10 => 3 } } 我需要通过哈希结构打印遍历路径和遍历结束时的值,以便按值排序. KeyB Key3 Key10 3 KeyA Key1 Key4 4 KeyA Key2 Key7 5 KeyB Key3 Key9 6 KeyA Key2 Key8 9 KeyA Key1 Key5 9 KeyA Key1 Key6 10 目前,为了解决这个问题,我使用嵌套的foreach循环遍历哈希结构,并通过插入具有等于遍历路径的键的元素(例如“KeyA Key3 Key10”)来创建扁平哈希,并且值等于末尾的值.遍历路径(例如3),然后执行另一个foreach循环,按值对平顶散列进行排序. 有没有更有效的方法来做到这一点? 解决方法
考虑创建排序数组,而不是创建新哈希.迭代初始值,根据值,键值对插入到数组中,然后迭代生成的数组.对于最后一次迭代的每次插入O(n),这应该给出初始迭代O(lg n)的O(n).
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |