数组-水平翻转-翻转

今天,投的某家公司HR发来一份题目,看了看题目,脑壳中缓缓冒出一个?
我应聘的不是前端吗?咋给我整算法题了?

最后因为第二题求最短排序连续子序列,就下面这链接的题,想不出来,又不想抄别人的,
而且3k的工资,还不一定通过面试,感觉不值得死那么多的脑细胞,所以放弃,
但第一题还是整出来了

第二题:
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/shortest-unsorted-continuous-subarray

第一题:

image

const Demo = () => { // Test开头的都是测试数据 const Test1 = [[1,1,0],[1,0,1],[0,0,0]]; // 示例1 const Test2 = [[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]]; // 示例2 // 根据题目说明,设定: // 1.二维数组的行和列都是大于等于1,小于等于20; // 2.数组里仅有 1 和 0; const A1 = Test2; const A2 = []; // 水平翻转 for(let i = 0; i < A1.length; i++){ A2.push(A1[i].reverse()); } // 反转 for(let a = 0; a < A2.length; a++){ for(let b = 0; b < A2[a].length; b++){ let num = A2[a][b]; if(num === 1){ A2[a][b] = 0; } if(num === 0){ A2[a][b] = 1; } } } console.log(A2); } Demo();

倒是蛮简单的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zydfwx.html