题目: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 思路:二分法,使用一个指针来找到数字的开头和结尾位置 ...
题目: 搜索二维矩阵 II:编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 思路: 二分查找常规思路。 程序: classSolution: defsearchMatrix self,matrix,target : :typematrix:List List int :typ ...
2020-05-12 10:56 0 761 推荐指数:
题目: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 思路:二分法,使用一个指针来找到数字的开头和结尾位置 ...
示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: [3,4] 示例 2: 输入: nums = [5,7,7,8,8,10], target = 6 输出: [-1,-1] 思路:定义两个变量start和end,分别指向数组首元素和末尾元素 ...
题目: 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 思路: 进阶: 一个直接的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。一个简单的改进方案是使用 O(m + n) 的额外空间 ...
题目: 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 思路: 使用两个指针,然后控制好边界就可以了。 程序: class Solution ...
Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties: Integers in each row ...
题目: 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 思路: 是第54题的逆向过程 程序: class Solution ...
思路:先遍历一遍找到0,然后将其他们的行与列分别记下来。接着再把相应行列置0。 ...
10.10 将一个5×5的矩阵中最大的元素放在中心,4个角分别放在4个最小的元素(按从左到右,从上到下的顺序,依次从小到大存放),写一个函数实现之,并用main函数调用。 结果: ...