LintCode 310. 数字变形 JavaScript算法
程序员文章站
2022-07-15 16:30:47
...
描述
现在题目给出一个整数A。
整数B是A的变形,由整数A的位数交替形成。
依次为A的右数第一位数,左数第一位数,右数第二位数…以此类推,得到整数B。
说明
0<=A<=1e200
样例
输入: "12345678"
输出:"81726354"
如果为空,则直接返回;否则做一次循环,A的右数第一位数,左数第一位数,右数第二位数…以此类推这样调换,添加到数组B中,打印时用join变回字符串
Distortion = function (A) {
if (A === '') return A;
m = A.length;
B=[]
tag = false;
for(i = 0, j = 0; i < m; ++i)
{
if (tag)
B[i] = A[j];
else
B[i] = A[m - j - 1];
j += i % 2;
tag = !tag;
}
return B.join('');
}
运行结果
推荐阅读
-
javascript使用递归算法求两个数字组合功能示例
-
LintCode 1505. 找数字 Java算法
-
LintCode 1266. 找不同 JavaScript算法
-
LintCode 41. 最大子数组 JavaScript算法
-
LintCode 767. 翻转数组 JavaScript算法
-
LintCode 1099. 不下降数组 JavaScript算法
-
LintCode 1347. 尾随零 JavaScript算法
-
LintCode 1314. 2的幂 JavaScript算法
-
LintCode 4. 丑数 II JavaScript算法
-
LintCode 34. N皇后问题 II JavaScript算法