- 博客(4)
- 收藏
- 关注
原创 回溯(子集问题,超时)and 动态规划(LeetCode 368:最大整除子集)
LeetCode 368:最大整除子集给你一个由 无重复 正整数组成的集合 nums ,请你找出并返回其中最大的整除子集 answer ,子集中每一元素对 (answer[i], answer[j]) 都应当满足:answer[i] % answer[j] == 0 ,或answer[j] % answer[i] ==0如果存在多个有效解子集,返回其中任何一个均可。示例 1:输入:nums = [1,2,3]输出:[1,2]解释:[1,3] 也会被视为正确答案。示例 2:输入:nums
2021-04-23 16:26:11 312
原创 KMP算法(LeetCode 28题:实现strStr())
KMP模式匹配算法KMP算法一般用于字符串匹配,即从文本串(text string)中找到与其匹配的模式串(pattern string)。例如:文本串:a a b a a b a a f;模式串:a a b a a f。解释:其文本串中出现了模式串,则称其字符串是匹配的。LeetCode 28题:实现strStr()实现 strStr() 函数。给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)
2021-04-22 15:42:05 223
原创 lower_bound和upper_bound的用法(C++)
头文件:lower_bound和upper_bound在头文件algorithm中;解释:lower_bound和upper_bound为二分法查找元素,其时间复杂度为O(log n)。一、数组中的lower_bound和upper_bound对于一个排序数组 nums[5]{1, 2, 5, 7, 9};(1) int i = lower_bound(nums, nums + n, val) - nums;函数解释:lower_bound函数返回数组 nums 中大于等于 val 的第一个元素的
2021-04-19 21:13:16 3478 6
原创 二叉搜索树(LeetCode相关题解(递归求解))
前言LeetCode 700:二叉搜索树中的搜索LeetCode 701:二叉搜索树的插入操作LeetCode 450:删除二叉搜索树中的节点LeetCode 669:修剪二叉搜索树一、什么是二叉搜索树1、空树是二叉搜索树2、若不为空则应具有以下3条性质:若它的左子树不为空,则左子树上所有节点的值均小于它的根节点的值;若它的右子树不为空,则右子树上所有节点的值均小于它的根节点的值;它的左右子树也均为二叉搜索树.前提:二叉搜索树首先是一个二叉树。二、二叉搜索树的操作1.查找(
2021-04-19 14:10:00 460
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人