随机出题:记忆纸牌和数独
海贼王记忆纸牌游戏
生成数据部分:
/**
* 返回值的区间 [a, b]
* @param {number} start
* @param {number} end
*/
const randomBetween = (start, end) => {
}
/**
* 洗牌算法,打乱参数arr, 中所有元素
* @param {array} arr
*/
const shuffle = (arr) => {
}
/**
*
* @param {number} piratesNumber
* 输出为数组类型,里面元素类型全部数字,值的范围 [0, 7], 并且里面元素为成对出现
*/
// 案例
// 输入 piratesNumber: 1 输出: [5, 5]
// 输入 piratesNumber: 3 输出: [6, 6, 2, 2, 1, 1]
/*
提示:
a = [1, 3, 5]
b = [...a, ...a]
*/
const getPirates = (piratesNumber = 7) => {
let a = []
/**
* 处理逻辑
*/
return a
}
// 在上面的基础上 打乱输出的元素
const getPirates2 = (piratesNumber = 7) => {
let a = []
/**
* 处理逻辑
*/
return a
}
Dom 问题
怎样判断一个元素是否被点击 怎样记录一个元素点击的次数
数独游戏
// 深拷贝的实现
// 你所实现的有那些缺陷
const deepCopy = arr => {
}
// 已知数组
map_data = [
[6, 2, 9, 0, 7, 8, 3, 0, 0],
[0, 0, 0, 0, 4, 3, 7, 0, 0],
[0, 0, 0, 0, 5, 0, 0, 0, 1],
[5, 0, 0, 0, 0, 0, 0, 7, 9],
[0, 3, 0, 8, 9, 0, 0, 6, 0],
[0, 1, 0, 4, 0, 7, 5, 3, 0],
[8, 6, 0, 7, 2, 0, 0, 1, 0],
[0, 9, 0, 3, 8, 6, 0, 5, 0],
[2, 4, 3, 0, 0, 9, 6, 0, 0],
]
/**
*
* @param {array} data 二维数组
* @param {array} position 元素的位置
* @param {number} number number 是不为零的
*/
// 案例
// inMapDataRow(map_data, [0, 0], 8) 输出 false
// inMapDataRow(map_data, [0, 0], 2) 输出 false
// inMapDataRow(map_data, [0, 0], 1) 输出 true
// 除了position所在的位置,当前行内如果有相同元素,那么输出为false, 反之 true
const inMapDataRow = (data, position, number) => {
}
/**
*
* @param {array} data 二维数组
* @param {array} position 元素的位置
* @param {number} number number 是不为零的
*/
// 案例
// inMapDataCol(map_data, [0, 0], 8) 输出 false
// inMapDataCol(map_data, [0, 0], 2) 输出 false
// inMapDataCol(map_data, [0, 0], 1) 输出 true
// 除了position所在的位置,当前列内如果有相同元素,那么输出为false, 反之 true
const inMapDataCol = (data, position, number) => {
}
/**
*
* @param {array} data 二维数组
* @param {array} position 元素的位置
* @param {number} number number 是不为零的
*/
// 案例
// inMapDataSquare(map_data, [0, 0], 8) 输出 true
// inMapDataSquare(map_data, [0, 0], 2) 输出 false
// inMapDataSquare(map_data, [0, 0], 1) 输出 true
// 宫: 数独盘面是个九宫,每一宫又分为九个小格。 在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。 使1-9每个数字在每一行、每一列和每一宫中都只出现一次,所以又称“九宫格”。
// 除了position所在的位置,当前宫内如果有相同元素,那么输出为false, 反之 true
const inMapDataSquare = (data, position, number) => {
}
/**
*
* @param {array} data 二维数组
* @param {array} position 元素的位置
* @param {number} number number 是不为零的
*/
// 案例
// isValidNumber(map_data, [0, 0], 8) 输出 false
// isValidNumber(map_data, [0, 0], 2) 输出 false
// isValidNumber(map_data, [0, 0], 1) 输出 true
// 除了position所在的位置,当前列、行、宫内如果有相同元素,那么输出为false, 反之 true
const isValidNumber = (data, position, number) => {
}
// 其他问题
// 怎样清除一个定时器
// 不清除会咋样
等待 更新
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有