xszi / javascript-algorithms

算法修炼中...
5 stars 0 forks source link

扑克牌问题(反向推导题) #85

Open xszi opened 3 years ago

xszi commented 3 years ago

魔术师手中有一堆扑克牌,观众不知道它的顺序,接下来魔术师:

此时,桌子上的牌顺序为: (牌顶) 1,2,3,4,5,6,7,8,9,10,11,12,13(牌底)。

问:原来魔术师手上牌的顺序,用函数实现。

xszi commented 3 years ago

逆向顺序为:

const calc = (arr) => {
    const origin = [];
    for (let i = 0; i < arr.length; i++) {
        if (origin.length) {
            const item = origin.pop();
            origin.unshift(item);
        }
        origin.unshift(arr[i])
    }
    return origin;
}