05 2023 档案

摘要:#题目链接:[LeetCode 530. 二叉搜索树的最小绝对差](https://leetcode.cn/problems/minimum-absolute-difference-in-bst/) ##题意: 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差 阅读全文
posted @ 2023-05-29 18:25 小星code 阅读(22) 评论(0) 推荐(0)
摘要:#题目链接:[LeetCode 98. 验证二叉搜索树](https://leetcode.cn/problems/validate-binary-search-tree/) ##题意: 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: * 节点的左 阅读全文
posted @ 2023-05-29 17:58 小星code 阅读(43) 评论(0) 推荐(0)
摘要:#题目链接:[LeetCode 700. 二叉搜索树中的搜索](https://leetcode.cn/problems/search-in-a-binary-search-tree/) ##题意: 给定二叉搜索树(BST)的根节点 root 和一个整数值 val。 你需要在 BST 中找到节点值等 阅读全文
posted @ 2023-05-29 16:45 小星code 阅读(14) 评论(0) 推荐(0)
摘要:#题目链接:[LeetCode 617. 合并二叉树](https://leetcode.cn/problems/merge-two-binary-trees/) ##题意: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而 阅读全文
posted @ 2023-05-29 16:02 小星code 阅读(29) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 654. 最大二叉树](https://leetcode.cn/problems/maximum-binary-tree/) ###题意: 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: * 创建一个根节点,其值为  阅读全文
posted @ 2023-05-29 15:20 小星code 阅读(19) 评论(0) 推荐(0)
摘要:![](https://img2023.cnblogs.com/blog/3182848/202305/3182848-20230522143917372-1262127520.png) 阅读全文
posted @ 2023-05-22 14:39 小星code 阅读(12) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 105. 从前序与中序遍历序列构造二叉树](https://leetcode.cn/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) ###题意: 给定两个整数数组 preor 阅读全文
posted @ 2023-05-19 21:56 小星code 阅读(19) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 106. 从中序与后序遍历序列构造二叉树](https://leetcode.cn/problems/construct-binary-tree-from-inorder-and-postorder-traversal/) ###题意: 给定两个整数数组 inor 阅读全文
posted @ 2023-05-19 21:55 小星code 阅读(30) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 113. 路径总和 II](https://leetcode.cn/problems/path-sum-ii/) ###题意: 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 ## 阅读全文
posted @ 2023-05-19 21:43 小星code 阅读(30) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 112. 路径总和](https://leetcode.cn/problems/path-sum/) ###题意: 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等 阅读全文
posted @ 2023-05-19 21:18 小星code 阅读(35) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 513. 找树左下角的值](https://leetcode.cn/problems/find-bottom-left-tree-value/) ###题意: 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 ###解题思路: 首先 阅读全文
posted @ 2023-05-19 18:07 小星code 阅读(25) 评论(0) 推荐(0)
摘要:###题目链接:[LeetCode 404. 左叶子之和](https://leetcode.cn/problems/sum-of-left-leaves/) ###题意: 给定二叉树的根节点 root ,返回所有左叶子之和。 ###解题思路: 首先要明确左叶子的定义:**节点A的左孩子不为空,且左 阅读全文
posted @ 2023-05-19 15:57 小星code 阅读(22) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 257. 二叉树的所有路径 ###题意: 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 ###解题思路: ####递归法 采用递归法,就是一个dfs的过程,在遍历过程中,记录上路径即可。 ####完整代码如下: var re 阅读全文
posted @ 2023-05-16 16:44 小星code 阅读(20) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 110. 平衡二叉树 ###题意: 给定一个二叉树,判断它是否是高度平衡的二叉树。 ###解题思路: ####1.递归法: 对于递归法,既然是求树的高度,则应该使用后序遍历的方式, 对于每个节点,求左右子树的高度,比较左右子树的高度差是否小于1,如果不满足,返回fa 阅读全文
posted @ 2023-05-16 16:17 小星code 阅读(19) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 222. 完全二叉树的节点个数 ###题意: 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 ###解题思路: ####1.按照普通的二叉树处理 #####递归法: //本题直接就是求有多少个节点,无脑存进结果变量就行了。 func countNo 阅读全文
posted @ 2023-05-16 15:27 小星code 阅读(27) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 111. 二叉树的最小深度 ###题意: 给定一个二叉树,找出其最小深度。 给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 ###解题思路: ####1.递归法 与求最大深度类似,采用先序或者后序都是可以的,但是这里要注意 阅读全文
posted @ 2023-05-16 15:10 小星code 阅读(24) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 559. N 叉树的最大深度 ###题意: 给定一个 N 叉树,找到其最大深度。 ###解题思路: ####1.递归法 对于递归法,就是遍历每个节点的所有的孩子节点,然后取最大值 ###递归代码如下 func maxDepth(root *Node) int { i 阅读全文
posted @ 2023-05-16 14:44 小星code 阅读(21) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 104. 二叉树的最大深度 ###题意: 给定一个二叉树,找出其最大深度。 ###解题思路: ####1. 递归法: 对于递归的解法,采用先序或者后序都是可以的。 ####后序递归代码如下: func maxDepth(root *TreeNode) int { v 阅读全文
posted @ 2023-05-16 14:33 小星code 阅读(30) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 101. 对称二叉树 ###题意: 给你一个二叉树的根节点 root , 检查它是否轴对称。 ###解题思路: ####1. 递归法 采用递归法思路就比较简单,因为要比较二叉树是否是轴对称的,因此就是比较左右子树是否轴对称, 因此在遍历的过程中,就是比较左边的左子树 阅读全文
posted @ 2023-05-15 19:47 小星code 阅读(26) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 226. 翻转二叉树 ###题意: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 ###解题思路: ** 对于每一个节点,只需要考虑反转当前节点的左右子树即可,因此只需要考虑遍历顺序,本题中,采用先序和后序遍历都是可以的,但是中序遍历就需要稍 阅读全文
posted @ 2023-05-15 18:08 小星code 阅读(28) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 102. 二叉树的层序遍历 ###题意: 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 ###解题思路: 借助一个队列,记录每一层的节点,实现层序遍历 ####代码1: func levelOrder(root 阅读全文
posted @ 2023-05-15 17:42 小星code 阅读(24) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 145. 二叉树的后序遍历 ###题意: 给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。 ###解题思路: 递归遍历 递归代码如下 /** * Definition for a binary tree node. * type TreeNode s 阅读全文
posted @ 2023-05-15 17:18 小星code 阅读(16) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 144. 二叉树的前序遍历 ###题意: 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 ###解题思路: 对于二叉树的遍历,有递归和非递归两种遍历方式, 1. 递归遍历 根据“左->根->右”的顺序,直接模拟即可。注意按照递归三部曲(递归的参数和返回 阅读全文
posted @ 2023-05-15 16:18 小星code 阅读(19) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 94. 二叉树的中序遍历 ###题意: 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 ###解题思路: 对于二叉树的遍历,有递归和非递归两种遍历方式, 1. 递归遍历 ** 根据“左->根->右”的顺序,直接模拟即可。注意按照递归三部曲(递归的参数 阅读全文
posted @ 2023-05-15 16:10 小星code 阅读(19) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 347. 前 K 个高频元素 ###题意: 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 ###解题思路: (哈希表,计数排序) O(n) 首先用哈希表统计出所有数出现的次数。 由于所有数出现的次 阅读全文
posted @ 2023-05-14 19:26 小星code 阅读(28) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 239. 滑动窗口最大值 ###题意: 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 ###解题思路: (单调队列) O( 阅读全文
posted @ 2023-05-14 18:56 小星code 阅读(43) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 150. 逆波兰表达式求值 ###题意: 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 ###解题思路: (栈操作) O(n) 遍历所有元素。如果当前元素是整数,则压入栈;如果是运 阅读全文
posted @ 2023-05-14 18:38 小星code 阅读(29) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 1047. 删除字符串中的所有相邻重复项 ###题意: 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 在 S 上反复执行重复项删除操作,直到无法继续删除。 ###解题思路: 开一个栈,然后扫描整个字符串。 如果当前字符和栈顶 阅读全文
posted @ 2023-05-14 18:25 小星code 阅读(38) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 20. 有效的括号 ###题意: 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 ###解题思路: 括号匹配是栈的经典应用场景,具体操作如下: 1. 对于所有的左括号,进栈 2. 对于所有的右括号,弹出栈顶元素, 阅读全文
posted @ 2023-05-14 17:53 小星code 阅读(15) 评论(0) 推荐(0)
摘要:Go-list 在Go语言的标准库中,提供了一个container包,这个包中提供了三种数据类型,就是heap,list和ring,本节要讲的是list的使用以及源码剖析。 要使用Go提供的list链表,则首先需要导入list包,如下所示: package main import( "contain 阅读全文
posted @ 2023-05-14 17:22 小星code 阅读(3218) 评论(0) 推荐(0)
摘要:kmp 什么是kmp kmp算法是一种字符串匹配算法,它对朴素模式匹配算法(时间复杂度 O(n*m))进行了改进,极大的减少了无用的匹配次数,降低时间复杂度(时间复杂度变为O(n+m)),提高算法效率。 什么叫kmp 该名字是由它的三位发明人的名字的缩写组成。(Knuth,Morris,Pratt) 阅读全文
posted @ 2023-05-10 18:13 小星code 阅读(1020) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 459. 重复的子字符串 ###题意: 给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。 ###解题思路: 本题就是kmp算法的经典应用,n - next[n] 是原字符串的最小周期 ####完整代码如下: func repeatedSubs 阅读全文
posted @ 2023-05-10 18:12 小星code 阅读(23) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 剑指 Offer 58 - II. 左旋转字符串 ###题意: 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。 请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab" 阅读全文
posted @ 2023-05-10 16:53 小星code 阅读(13) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 151. 反转字符串中的单词 ###题意: 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 ###解题思路: 如果我们将整个字符串都反转过来,那么单词的顺序指定是倒序了,只不过单词本身也倒序了,那么再把单词反转一下,单词不就正过来了。 所以解题思路如下: 移 阅读全文
posted @ 2023-05-10 16:37 小星code 阅读(36) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 剑指 Offer 05. 替换空格 ###题意: 输入一个字符串 s ,然后将 s 中的每个空格替换成"%20"。 ###解题思路: 直接遍历一遍字符串, 如果当前字符不是空格,则加入到结果中 如果是空格,则将“%20”加入到结果集 ####完整代码如下: func 阅读全文
posted @ 2023-05-10 15:04 小星code 阅读(25) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 541. 反转字符串 II ###题意: 给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个,则将剩余字符全部反转。 如果剩余字符小于 2k 但大于或等于 k 个,则反转前 阅读全文
posted @ 2023-05-10 14:58 小星code 阅读(15) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 344. 反转字符串 ###题意: 输入一个字符串,将其在原地进行反转。 ###解题思路: 对于字符串,我们定义两个指针(也可以说是索引下标),一个从字符串前面,一个从字符串后面,两个指针同时向中间移动,并交换元素。 ####完整代码如下: func reverse 阅读全文
posted @ 2023-05-10 14:37 小星code 阅读(25) 评论(0) 推荐(0)
摘要:首先两者都可以进行变量的声明,但是也有区别: := 只能在函数内部使用,也就是说只能用来声明局部变量, var 在函数内部或者外部都可以使用,因此通常使用var来声明全局变量 := 在声明指针变量时,会在分配内存空间,并赋值,var 声明指针变量时,不分配内存空间,零值为 nil。因此在声明之后,需 阅读全文
posted @ 2023-05-09 15:35 小星code 阅读(326) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 76. 最小覆盖子串 ###题意: 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 ###解题思路: 方法:采用双指针的方法(或者叫滑动窗口) 双指针算法(滑动窗 阅读全文
posted @ 2023-05-08 17:40 小星code 阅读(150) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 18. 四数之和 ###题意: 本题思路与LeetCode 15. 三数之和思路完全一样,只是多加了一层for循环 ###解题思路: ####完整代码如下: func fourSum(nums []int, target int) [][]int { // 四元组, 阅读全文
posted @ 2023-05-07 20:54 小星code 阅读(20) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 15. 三数之和 ###题意: 在给定的数组中,找出三个数(三个数不重复)使得他们相加的和为 0 ,同时答案中不能有重复的答案 ###解题思路: ####完整代码如下: //双指针做法首先要有序 // 解法一 最优解,双指针 + 排序 func threeSum(n 阅读全文
posted @ 2023-05-07 20:50 小星code 阅读(33) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 383. 赎金信 ###题意: 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 ###解题思路: 首先利用map记录magazine 中所有出现的字母,key是单个字母,valu 阅读全文
posted @ 2023-05-07 20:32 小星code 阅读(22) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 454. 四数相加 II ###题意: 给定四个数组,找出在四个数组中,各取一个数,使得四个数相加和为0 ###解题思路: 本题给出的是四个独立的数组,只要找到nums1[i] + nums2[j] + nums3[k] + nums4[l] = 0就可以,不用考虑 阅读全文
posted @ 2023-05-07 20:16 小星code 阅读(22) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 1. 两数之和 ###题意: 本题就是要找出数组中的两个数,使得它们的和等于target ###解题思路: 1、 首先暴力的做法就是两层的for循环,遍历整个nums数组,找出所有的组合,判断组合中是否有相加等于target的组合 算法复杂度为O(n^2) , ## 阅读全文
posted @ 2023-05-07 19:56 小星code 阅读(26) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 202. 快乐数 ###题意: 本题是让我们判断一个数是否是快乐数,题干中给出了快乐数的条件。 ###解题思路: 方法一: 在题干中指出,如果一个数不是快乐数的话,那么它的各个位上的数字的平方和会无限循环,始终变不到1, 也就是说求和的过程中,sum会重复出现,因此 阅读全文
posted @ 2023-05-07 19:29 小星code 阅读(56) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 349. 两个数组的交集 ###题意: 本题题意是让我们找出两个数组中的交集,注意交集中不能出现重复元素 ###解题思路: 思路比较常规,先遍历数组num1,对于每个首次出现的数字,对应位置上的数值 +1, 再遍历数组num2,判断当前数字是否在num1中出现,如果 阅读全文
posted @ 2023-05-07 17:48 小星code 阅读(26) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 242. 有效的字母异位词 ###题意: 本题是要判断两个字符串 s 和 t,是否是字母异位词,所谓字母异位次就是 如果 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。 ###解题思路: 首先我们很容易想到,最简单的思路就是先遍历一遍s字 阅读全文
posted @ 2023-05-07 17:32 小星code 阅读(24) 评论(0) 推荐(0)
摘要:###题目链接:LeetCode 142. 环形链表 II ###题意: 如果链表中存在环,则找出环的入口,如果链表中不存在环,则返回null ###解题思路: 解决本题有两个关键的点: 判断链表中是否存在环 如果存在环的话,如何找出环的入口 ####判断链表是否存在环 判断一个链表是否存在环,可以 阅读全文
posted @ 2023-05-06 17:10 小星code 阅读(72) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 160. 相交链表 **题意:**本题是让找出两个相交的链表的交点,并返回。 解题思路: 方法一: 由于A,B两条链表的长度是未知的,长度不一定相同,但是两个链表的后半段是相交的,也就是说两条链表的后半段的某一部分是相同的, 因此我们可以求出两个链表的长度,并求出两个链表 阅读全文
posted @ 2023-05-06 15:56 小星code 阅读(46) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 19. 删除链表的倒数第 N 个结点 本题依旧采用双指针的解法, 首先快指针先走 n+1 步,然后快慢指针同时往后走。当快指针走到链表末尾时,慢指针所在的位置刚好是倒数第n-1个结点, 然后利用慢指针,删除倒数第n个结点 完整代码如下: func removeNthFro 阅读全文
posted @ 2023-05-06 15:21 小星code 阅读(30) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 24. 两两交换链表中的节点 本题不涉及算法,直接模拟就可以了,但是模拟的过程中,最好进行画图演示,不然容易出错。 想要达到两两交换链表中节点的效果,就需要按照以下三个步骤进行。 同时为了将头结点和非头结点统一处理,因此新建一个虚拟头结点, 初始时,cur指向虚拟头结点, 阅读全文
posted @ 2023-05-06 15:03 小星code 阅读(62) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 206. 反转链表 本题是链表题目中非常重要的一道题目--反转指针。 解题方法有两种:1.双指针法 2. 递归法 首先看双指针法: 快指针总是在慢指针的前面,也就是每次将快指针的节点的next指针更新成指向慢指针,这样不就进行了反转嘛。 完整代码如下: func reve 阅读全文
posted @ 2023-05-05 18:29 小星code 阅读(47) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 203. 移除链表元素 本题是一个经典的单链表删除元素的题目,主要注意的有两点: 如果删除的元素是不是头元素,则直接 p.Next= p.Next.Next即可 如果删除的元素是头元素,则需要进行单独的处理 for head != nil && head.Val == v 阅读全文
posted @ 2023-05-05 17:33 小星code 阅读(37) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 59. 螺旋矩阵 II 本题不涉及算法,只是简单的模拟,但是由于边界条件比较多,因此容易出错。 分析题干:题目要求按照右、下、左、上、这样的顺序对数组进行填充,填充的值为 1 ~ n*n,因此问题的关键就是找到待填充的位置,将其值赋值为 i 即可。 由于填充的顺序是有规律 阅读全文
posted @ 2023-05-05 17:02 小星code 阅读(59) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 209. 长度最小的子数组 本题是一个滑动窗口的题, 所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。 在本题中实现滑动窗口,主要确定如下三点: **窗口内是什么?**窗口就是 满足其和 ≥ target 的长度最小的 连续 子数组。 ** 阅读全文
posted @ 2023-05-05 16:24 小星code 阅读(38) 评论(0) 推荐(0)
摘要:题目链接 :LeetCode 977. 有序数组的平方 本题直接暴力求解就是先求出每个元素平方后的值,再对平方后的值进行排序, 双指针解法 由于数组其实是有序的, 只不过负数平方之后可能成为最大数了。那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间。此时可以考虑双指针法了,i指 阅读全文
posted @ 2023-05-05 15:55 小星code 阅读(44) 评论(0) 推荐(0)
摘要:题目链接:LeetCode 27. 移除元素 本题大意是要对一个数组进行原地删除数值等于 val 的元素。 双指针算法: 通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。 快指针(p指针):寻找新数组的元素 ,新数组就是不含有目标元素的数组 慢指针(q指针):指向更新 新数组下标的 阅读全文
posted @ 2023-05-05 15:43 小星code 阅读(38) 评论(0) 推荐(0)
摘要:##本题考查的就是一个基本的整数二分查找问题 对于整数二分,有单调性一定可以二分,没有单调性的有时候也可以二分。 ##算法思想(分为两种方法): 查找结果是在左边区间的情况 区间被划分为[l,mid]和[mid+1,r] 1、确定分界点,mid=q[(l+r)/2] 2、判断是否满足 是:区间变成[ 阅读全文
posted @ 2023-05-05 15:22 小星code 阅读(30) 评论(0) 推荐(0)