{A}
AlgoViz
首页
路线图
题单
教程
题目
可视化
错题本
进度
登录
加载中…
凯撒密码 Caesar Cipher
古典密码:明文每个字母按固定移位数循环替换。
明文:
移位数 k:
速度:
0.5x
1x
2x
4x
h
·
e
·
l
·
l
·
o
·
凯撒密码:每个字母循环右移 3 位
移位数 k = 3(解密用 -3)
步骤 1 / 7
凯撒密码:每个字母循环右移 3 位
算法代码
复制代码
当前高亮行:
1
(凯撒密码:每个字母循环右移 3 位)
1
function
shift(str, k) {
2
return
str.toLowerCase().split(
""
).map((ch) => {
3
const
idx = alphabet.indexOf(ch);
4
if
(idx <
0
)
return
ch;
5
return
alphabet[(idx + k) %
26
];
6
}).join(
""
);
7
}