摘要:
学习写法 力扣 Krahets 剑指 Offer 66. 构建乘积数组(表格分区,清晰图解) 两个for循环。 上下两个三角 class Solution { public: vector<int> multiply(const vector<int>& A) { int len=A.size(); 阅读全文
摘要:
参考学习题解: 剑指 Offer 07. 重建二叉树(分治算法,清晰图解)作者:Krahets 解题思路: 前序遍历性质: 节点按照 [ 根节点 | 左子树 | 右子树 ] 排序。 中序遍历性质: 节点按照 [ 左子树 | 根节点 | 右子树 ] 排序。 以题目示例为例: 前序遍历划分 [ 3 | 阅读全文
摘要:
####分治算法 分治算法是一种高效的算法思想,它将问题分解成更小的子问题,通过解决子问题来解决原始问题。它的核心思想是将问题分解成若干个规模更小但结构相同的子问题,并且通过递归的方式解决这些子问题,最终将子问题的解合并起来得到原问题的解。 通常情况下,分治算法包含三个步骤: 分解:将原问题分解成若 阅读全文
摘要:
牛客 题目跳转链接 代码随想录 双指针解法 时间复杂度:O(n) 空间复杂度:O(1) class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param s string字符串 * @return str 阅读全文
摘要:
Leetcode 704 二分查找 力扣(LeetCode)题目跳转链接 题目描述: 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 示例 1: 输入: nums = [-1, 阅读全文
摘要:
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 数据范围 二维数组中元素个数范围 [0,1000] 样例 输入数组: [ [1,2,8,9], [2,4,9,12], [4,7, 阅读全文