自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(176)
  • 收藏
  • 关注

原创 【LeetCode 热题 100】153. 寻找旋转排序数组中的最小值——二分查找

这段代码旨在解决一个经典的二分查找变种问题:寻找旋转排序数组中的最小值 (Find Minimum in Rotated Sorted Array)。一个旋转排序数组是指一个原本升序排列且没有重复元素的数组,在某个未知的“枢轴”点进行了旋转(例如, 可能变为 )。该算法采用了一种非常高效的、经过特殊设计的 二分查找 策略来定位最小值。其核心思想是,通过比较中间元素 和数组的最后一个元素 ,来判断最小值所在的区间,从而不断缩小搜索范围。关键参照物:数组的最后一个元素二分查找的逻辑循环终止与结果这个算法 el

2025-07-31 00:15:00 453

原创 【LeetCode 热题 100】33. 搜索旋转排序数组——(解法二)一次二分

Problem:整数数组 nums 按升序排列,数组中的值 互不相同。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2]。

2025-07-31 00:00:00 384

原创 【LeetCode 热题 100】33. 搜索旋转排序数组——(解法一)两次二分

Problem:整数数组 nums 按升序排列,数组中的值 互不相同。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2]。

2025-07-30 00:15:00 612

原创 【LeetCode 热题 100】34. 在排序数组中查找元素的第一个和最后一个位置——二分查找

问题要求在一个升序排序的数组。

2025-07-30 00:00:00 933

原创 【LeetCode 热题 100】74. 搜索二维矩阵——(解法二)排除法

Problem:给你一个满足下述两条属性的 m x n 整数矩阵:每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。给你一个整数 target ,如果 target 在矩阵中,返回 true;否则,返回 false。

2025-07-29 00:30:00 956

原创 【LeetCode 热题 100】74. 搜索二维矩阵——(解法一)二分查找

Problem:给你一个满足下述两条属性的 m x n 整数矩阵:每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。给你一个整数 target ,如果 target 在矩阵中,返回 true;否则,返回 false。

2025-07-29 00:15:00 1527

原创 【LeetCode 热题 100】35. 搜索插入位置——二分查找(闭区间)

这段代码同样旨在解决 “搜索插入位置 (Search Insert Position)” 的问题。它也是基于二分查找(Binary Search),但采用了另一种常见的“左闭右闭”区间模板。这个模板的搜索逻辑和边界处理与“左闭右开”版本略有不同。算法的整体思路可以分解为以下步骤:定义搜索区间:循环搜索:确定最终结果:时空复杂度时间复杂度:O(log N)算法核心:该算法是二分查找。计算依据:与上一个版本类似, 循环的每一次迭代都会将搜索区间 的大小(即 )大约减半。这导致循环的迭代次数与

2025-07-29 00:00:00 609

原创 【LeetCode 热题 100】51. N 皇后——回溯

Problem:按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。

2025-07-28 00:00:00 955

原创 【LeetCode 热题 100】35. 搜索插入位置——二分查找(左闭右开)

这段代码旨在解决一个经典的搜索问题:搜索插入位置 (Search Insert Position)。问题要求在一个已排序的数组 中查找目标值 。如果找到,则返回其索引;如果未找到,则返回它应该被插入的位置的索引,以保持数组的有序性。该算法采用的核心方法是二分查找(Binary Search),这是一种在有序数据集中进行高效查找的算法。此特定实现方式是一种常见的“左闭右开”区间模板,其目标是找到第一个大于或等于 的元素的位置。算法的整体思路可以分解为以下步骤:定义搜索区间:循环搜索:确定最终结果:时空复

2025-07-28 00:00:00 915

原创 【LeetCode 热题 100】79. 单词搜索——回溯

Problem:给定一个 m x n 二维字符网格 board 和一个字符串单词 word。如果 word 存在于网格中,返回 true;否则,返回 false。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。

2025-07-27 00:00:00 1227

原创 【LeetCode 热题 100】131. 分割回文串——回溯

这段代码旨在解决一个经典的组合搜索问题:分割回文串 (Palindrome Partitioning)。其目标是找到一个字符串 的所有可能的分割方案,使得每个分割出的子串都是一个回文串。该算法采用 深度优先搜索(DFS) 配合 回溯(Backtracking) 的策略来系统地探索所有可能的分割点。这个特定实现的DFS逻辑稍显独特,但其核心思想是,在字符串的每个位置 ,决定是否在此处进行“切割”。DFS 状态定义:递归中的决策(二分选择):基准情况与结果收集:通过这种方式,算法不重不漏地枚举了所有可能的、由

2025-07-27 00:00:00 1160

原创 【LeetCode 热题 100】22. 括号生成——(解法二)记录左括号位置

Problem:数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

2025-07-26 00:15:00 790

原创 【LeetCode 热题 100】22. 括号生成——(解法一)选左括号还是选有括号

Problem:数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

2025-07-26 00:00:00 978

原创 【LeetCode 热题 100】39. 组合总和——(解法二)选哪个

Problem:给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。candidates 中的 同一个 数字可以 无限制重复被选取。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为 target 的不同组合数少于 150 个。

2025-07-25 00:15:00 869

原创 【LeetCode 热题 100】39. 组合总和——(解法一)选或不选

Problem:给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。candidates 中的 同一个 数字可以 无限制重复被选取。如果至少一个数字的被选数量不同,则两种组合是不同的。对于给定的输入,保证和为 target 的不同组合数少于 150 个。

2025-07-25 00:00:00 885

原创 【LeetCode 热题 100】17. 电话号码的字母组合——DFS+回溯

这段代码旨在解决一个经典的组合问题:电话号码的字母组合 (Letter Combinations of a Phone Number)。给定一个只包含数字 2-9 的字符串,它需要返回所有这些数字可能代表的字母组合。该算法采用的核心方法是 回溯法(Backtracking),通过 深度优先搜索(DFS) 来系统地探索所有可能的字母组合。算法的整体思路可以分解为以下步骤:映射关系与初始化:逐位构建组合:递归与回溯的核心逻辑:递归终止条件:通过这个“选择-探索-撤销”的循环,算法能够不重不漏地遍历所有可能的字母

2025-07-24 00:15:00 893

原创 【LeetCode 热题 100】78. 子集——(解法二)回溯+选哪个

Problem:题目:给你一个整数数组 nums ,数组中的元素 互不相同。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

2025-07-24 00:00:00 670

原创 【LeetCode 热题 100】78. 子集——(解法三)位运算

Problem:题目:给你一个整数数组 nums ,数组中的元素 互不相同。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

2025-07-24 00:00:00 896

原创 【LeetCode 热题 100】78. 子集——(解法一)回溯+选或不选

Problem:题目:给你一个整数数组 nums ,数组中的元素 互不相同。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。

2025-07-23 00:15:00 2444

原创 【LeetCode 热题 100】46. 全排列——回溯

这段代码旨在解决一个经典的组合数学问题:全排列 (Permutations)。给定一个不含重复数字的数组 ,它需要找出其所有可能的全排列,并返回一个包含这些排列的列表。该算法采用的核心方法是 回溯法(Backtracking),这是一种通过 深度优先搜索(DFS) 来系统地探索所有可能解的搜索策略。算法的整体思路可以分解为以下步骤:逐位构建排列:状态维护:递归与回溯的核心逻辑:递归终止条件:通过这个“选择-探索-撤销”的循环,算法能够不重不漏地遍历所有可能的排列组合。时空复杂度时间复杂度:O(N * N

2025-07-23 00:00:00 559

原创 【LeetCode 热题 100】207. 课程表——DFS+三色标记

这段代码的目的是判断给定的课程和它们的先修课程要求是否能够构成一个可行的学习计划。这个问题在图论中等价于 检测一个有向图中是否存在环 (Cycle Detection in a Directed Graph)。如果存在环(例如,A->B->C->A),则意味着存在循环依赖,课程计划无法完成。该算法采用了经典的 深度优先搜索(DFS) 配合 三色标记法 来高效地检测环。构建图(邻接表):三色标记法:深度优先搜索 (DFS) 检测环:最终结果:时空复杂度时间复杂度:O(V + E)图的构建:构建邻接表需

2025-07-22 00:00:00 1418

原创 【LeetCode 热题 100】208. 实现 Trie (前缀树)

Trie树用空间换取了时间,它提供了与字典大小无关的、只与查询字符串长度相关的极快查询速度。参考灵神。

2025-07-22 00:00:00 968

原创 【LeetCode 热题 100】236. 二叉树的最近公共祖先——DFS

Problem:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。

2025-07-21 00:00:00 912

原创 【LeetCode 热题 100】124. 二叉树中的最大路径和——DFS

Problem:二叉树中的 路径 被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次。该路径 至少包含一个 节点,且不一定经过根节点。路径和 是路径中各节点值的总和。给你一个二叉树的根节点 root ,返回其 最大路径和。

2025-07-21 00:00:00 790

原创 【LeetCode 热题 100】200. 岛屿数量——DFS

Problem:给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。

2025-07-21 00:00:00 879

原创 【LeetCode 热题 100】437. 路径总和 III——(解法二)前缀和+哈希表

Problem:给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

2025-07-20 00:15:00 523

原创 【LeetCode 热题 100】437. 路径总和 III——(解法一)递归递归!

Problem:给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

2025-07-20 00:00:00 804

原创 【LeetCode 热题 100】199. 二叉树的右视图——(解法二)DFS

Problem:给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

2025-07-19 00:15:00 965

原创 【LeetCode 热题 100】199. 二叉树的右视图——(解法一)BFS

Problem:给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

2025-07-19 00:00:00 1590

原创 【LeetCode 热题 100】108. 将有序数组转换为二叉搜索树

Problem:给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡 二叉搜索树。

2025-07-18 00:00:00 902

原创 【LeetCode 热题 100】230. 二叉搜索树中第 K 小的元素——中序遍历

Problem:给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。

2025-07-18 00:00:00 784

原创 【LeetCode 热题 100】102. 二叉树的层序遍历——BFS

Problem:给你二叉树的根节点 root ,返回其节点值的 层序遍历。(即逐层地,从左到右访问所有节点)。

2025-07-17 00:15:00 1424

原创 【LeetCode 热题 100】543. 二叉树的直径——DFS

Problem:题目:给你一棵二叉树的根节点,返回该树的 直径。二叉树的 直径 是指树中任意两个节点之间最长路径的 长度。这条路径可能经过也可能不经过根节点 root。两节点之间路径的 长度 由它们之间边数表示。

2025-07-17 00:00:00 1890

原创 【LeetCode 热题 100】994. 腐烂的橘子——BFS

Problem:每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。

2025-07-16 10:18:26 973

原创 【LeetCode 热题 100】101. 对称二叉树——DFS

Problem:题目:给你一个二叉树的根节点 root , 检查它是否轴对称。

2025-07-16 00:15:00 622

原创 【LeetCode 热题 100】226. 翻转二叉树——DFS

Problem:题目:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

2025-07-16 00:00:00 926

原创 【LeetCode 热题 100】104. 二叉树的最大深度——DFS

Problem:题目:给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。

2025-07-15 00:15:00 780

原创 【LeetCode 热题 100】94. 二叉树的中序遍历——DFS

Problem:题目:给定一个二叉树的根节点 root ,返回 它的 中序 遍历。

2025-07-15 00:00:00 825

原创 基于Yolov8车辆检测及图像处理系统【有代码】

车辆目标检测是计算机视觉领域的一个重要研究方向,其目标是从图像或视频序列中准确识别和定位车辆,为后续的车辆跟踪、行为分析和交通流量统计等任务提供基础。近年来,随着深度学习技术的发展,基于卷积神经网络(CNN)的目标检测方法取得了显著进展,如Faster R-CNN、SSD、YOLO等算法在车辆检测任务上展现出优越的性能。系统不仅能够实现对静态图像中车辆的准确检测,还提供了丰富的图像处理和分析功能,以及友好的用户界面,使得用户能够方便地进行车辆检测相关的研究和应用。点击车辆检测,效果如图13所示。

2025-07-14 08:55:31 1063

原创 【LeetCode 热题 100】23. 合并 K 个升序链表——(解法四)迭代式归并

Problem:题目:给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。

2025-07-14 00:45:00 2151

基于Yolov8车辆检测及图像处理系统

一个简单的图像处理以及 yolov8 车辆检测的系统

2025-07-12

【计算机视觉】面向车辆目标检测的智慧图像识别系统:图像处理与特征提取操作指南

内容概要:本文档介绍了面向车辆目标检测的智慧图像识别系统的图像处理流程与功能。系统主要分为图像显示、基本操作、预处理、边缘检测、特征提取和深度学习几个模块。具体功能包括打开和保存图像、调整大小、转换为灰度图、直方图均衡化、高斯滤波、图像锐化、Canny边缘检测、Sobel边缘检测、形态学梯度边缘检测、SIFT特征点检测、HOG特征描述符、几何特征提取以及最终的车辆检测。每个步骤都有详细的处理提示和完成标识。 适合人群:适合对计算机视觉和图像处理有一定了解的技术人员,特别是从事智能交通系统或相关领域研究与开发的工程师。 使用场景及目标:①帮助用户熟悉图像处理的基本流程和技术手段;②为车辆检测项目提供从图像预处理到特征提取的完整解决方案;③支持科研人员进行算法优化和模型训练。 阅读建议:由于文档内容侧重于实际操作步骤,建议读者在学习过程中配合具体案例进行练习,同时可以参考相关的理论书籍加深理解。

2025-07-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除