随笔分类 -  0-数据结构/算法

摘要:1,对比 https://blog.csdn.net/honghuidan/article/details/77527808 两者相同点:单点/区间修改,区间查询 区间查询:前缀和 区间修改,单点查询:差分 单点修改,区间查询:树状数组,线段树 区间修改,区间查询:线段树+懒标记 不同点: ==树状 阅读全文
posted @ 2022-06-06 21:08 tensor_zhang 阅读(172) 评论(0) 推荐(0)
摘要:1-排序的用法 实现数据的顺序排列; ==在数据有重复时,实现相同数据的聚集==(能这样做的前提是,最终结果与原先的顺序无关)。 2-数字字典序 如果是正常字符串字典序,那么java中a.compareTo(b)就是排序结果,返回负值表示a在b前,返回正值表示a在b后 https://leetcod 阅读全文
posted @ 2022-05-24 19:24 tensor_zhang 阅读(55) 评论(0) 推荐(0)
摘要:0,图的一些基本概念 https://oi-wiki.org/graph/concept/ 1,无向图的遍历 这里的遍历指的是从任一点出发,依据边的连接关系,直到不能再向下传递为止。 无向图与多叉树的区别 树的遍历只有一个根节点,图的遍历则可以从任一点出发(无向图的所有点都可以是根节点,一个有N个顶 阅读全文
posted @ 2022-04-05 11:41 tensor_zhang 阅读(35) 评论(0) 推荐(0)
摘要:1,回溯框架 要学回溯,先要学会递归,递归可以通过学树的深度优先遍历来学。 解决递归问题,需要思考的问题: 1,递归函数的输入是什么 2,递归函数在哪里进行递归调用(比如树的前中后序的调用位置,本质是后面的递归是否需要之前处理的信息) 3,递归调用前后需要对数据进行什么处理 4,结束条件、返回值 解 阅读全文
posted @ 2022-03-22 15:24 tensor_zhang 阅读(107) 评论(0) 推荐(0)
摘要:0,技巧 1,巧用python的同步赋值,同步赋值时先计算等号右边再给左边依此赋值,注意左边的顺序不要相互干扰 例子1,取反: nodeBefore, node = head, head.next while node: node.next, nodeBefore, node = nodeBefor 阅读全文
posted @ 2021-12-22 14:47 tensor_zhang 阅读(49) 评论(0) 推荐(0)
摘要:1,题目 leetcode-912. 排序数组 2,选择排序 核心思想:挑出最值放在一边 时间复杂度:O(N^2) 示例代码: class Solution: def sortArray(self, nums: List[int]) -> List[int]: length = len(nums) 阅读全文
posted @ 2021-10-07 23:49 tensor_zhang 阅读(56) 评论(0) 推荐(0)
摘要:1-数位运算 1-1-位图/状态压缩技巧 可以用一个数字表示一个数组中所有值的取值与否(从而将不可哈希的boolean数组转换为可以哈希的数字,这样就可以做为key传递给哈希表了),或者记录一个字符串中不同字母是否出现过(int中的第26位分别标记a~z是否出现过,并通过按位与的操作判断两个字符中是 阅读全文
posted @ 2021-08-22 00:28 tensor_zhang 阅读(178) 评论(0) 推荐(0)
摘要:[931. 下降路径最小和] 给你一个 n x n 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径 的 最小和 。 下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(即位于正下方或者沿对角线向左或者向右 阅读全文
posted @ 2021-06-19 00:48 tensor_zhang 阅读(59) 评论(0) 推荐(0)
摘要:1,适用范围及模板 记忆化搜索与动态规划等价吗? 自己的理解: 记忆化搜索其实应该总结到归纳2-递归那里,是递归的一部分,但是记忆化搜索和动态规划能够解决的问题范围接近(最值问题),就在这里进行了总结;并且动态规划效率比记忆化搜索要高,算是一种效率上的进阶。 记忆化搜索(递归+备忘录形式)=备忘录( 阅读全文
posted @ 2021-04-24 23:32 tensor_zhang 阅读(246) 评论(0) 推荐(0)
摘要:1-二叉树遍历 1-1-递归 时间复杂度:O(n),n为节点数,访问每个节点恰好一次。 空间复杂度:空间复杂度:O(h),h为树的高度。最坏情况下需要空间O(n),平均情况为O(logn) # Definition for a binary tree node. # class TreeNode: 阅读全文
posted @ 2021-03-28 10:09 tensor_zhang 阅读(184) 评论(0) 推荐(0)