是否存在用于有效实施此加密算法的数据结构?
来源:爱站网时间:2021-11-13编辑:网友分享
是否存在用于有效实施此加密算法的数据结构?这是爱站技术小编最近正在研究的课题,也是小编的同事最近问起的一个问题,现在一篇文章几分钟的时间给大家讲解一下。
问题描述
输入->字母->输出(字母中数字的索引)->新字母(数字移动到字母的开头):
3-> [1、2、3、4、5]-> 3-> [3、1、2、4、5]
2-> [3,1,2,4,5]-> 3-> [2,3,1,4,5]
1-> [2、3、1、4、5]-> 3-> [1、2、3、4、5]
1-> [1、2、3、4、5]-> 1-> [1、2、3、4、5]
4-> [1、2、3、4、5]-> 4-> [4、1、2、3、5]
5-> [4,1,2,3,5]-> 5-> [5,4,1,2,3]
输入:(n-字母数字,m-要加密的文本长度,文本)
5,6
3 2 1 1 4 5
答案:3 2 1 1 4 5-> 3 3 3 1 4 5
有没有比O(n * m)更快的数据结构或算法可以使它高效运行?
任何想法我都会感激。谢谢。
思路:
也许是带有字母/索引对的哈希图?我相信,在大多数情况下,除非经常发生冲突(不太可能),否则哈希表中的元素查找通常通常为O(1)。
以上内容就是爱站技术频道小编为大家分享的是否存在用于有效实施此加密算法的数据结构?看完以上分享之后,大家应该都知道有还是没有了吧。