type
status
date
slug
summary
tags
category
icon
password
Day1
566. 重塑矩阵(简单)
自己的笨方法
- 我的想法是不管三七二十一直接把原来的数组变成一维的数组,再利用这个数组进行一个重新遍历装入题解数组
- 很暴力(幸运的是这道题的数组大小不是很大,没有超过时间空间限制)
数学思路(优化)
精华的步骤:ans[x / c][x % c] = nums[x / n][x % n]
- 数学关系:
- 同样地,我们可以将整数 x 映射回其在矩阵中的下标:
- 将二维数组 nums 映射成一个一维数组;
- 将这个一维数组映射回 r 行 c 列的二维数组。
766. 托普利茨矩阵(简单)
如果矩阵每一条由左上到右下的对角线上的元素都相同,那么这个矩阵是托普利茨矩阵。
遍历
- 这个矩阵的最大特点是横纵坐标+1的对应的值都相同
- 所以暴力遍历是一种很容易想到的解法
240. 搜索二维矩阵 II(中等)
纯暴力遍历
- 这个解法所有人都秒想到吧,但如果矩阵足够大就会出现超出时间的情况
二分查找
- 往往可以采用二分查找来降低时间复杂度
lower_bound(row.begin(), row.end(), target)
- 这个函数接受三个参数:一个指向容器起始位置的迭代器、一个指向容器结束位置的迭代器以及要查找的值。如果容器中不存在大于或等于给定值的元素,则返回指向容器末尾的迭代器
- 在使用时,需要确保传入的容器是有序的,因为lower_bound函数依赖于这一点来正确工作。
- 利用了二分查找算法来快速定位目标元素的位置
二叉搜索树
- 无意中看到这个题解,无敌了
- 能想到二叉搜索树这个思路,真的很强,我不过多赘述,放链接!!!
- 个人觉得官方题解的Z字形搜索没有这个好理解,但还是放个链接,想了解可以去了解第三个做法
系列专题介绍
- Author:Chailyn
- URL:https://own.chailyncui.blog/article/matrix
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts