美文网首页
9行代码递归实现取随机不重复的数字加入数组

9行代码递归实现取随机不重复的数字加入数组

作者: OriX0 | 来源:发表于2020-06-30 14:32 被阅读0次

    题目要求

    • 用递归算法实现(限制15行代码以内实现)

    • 生成一个长度为5的空数组arr。

    • 生成一个(2-32)之间的随机整数rand。

    • 把随机数rand插入到数组arr内,如果数组arr内已存在与rand相同的数字,则重新生成随机数rand并插入到arr内[需要使用递归实现,不能使用for/while等循环]*

    • 最终输出一个长度为5,且内容不重复的数组arr

    代码
    var arr = new Array(5);
    function getRandomInsertArr (length) {
     if (length < 0) return;
     const tempItem = Math.floor(2 + Math.random() * 31);
     if (arr.includes(tempItem)) return getRandomInsertArr(length);
     arr[length] = tempItem;
     return getRandomInsertArr(length - 1);
    }
    getRandomInsertArr(arr.length-1);
    

    相关文章

      网友评论

          本文标题:9行代码递归实现取随机不重复的数字加入数组

          本文链接:https://www.haomeiwen.com/subject/hflxqktx.html