牛哄哄的柯南
keafmd(keep accumulate for my dream)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LRU 算法详解与 Java 的两种实现方式
LRU(Least Recently Used),即最近最少使用算法,是一种常用的缓存替换策略。在计算机系统中,缓存的容量是有限的,当缓存已满且需要加载新的数据时,就需要一种策略来决定淘汰哪些数据,LRU 算法就是基于 “如果数据最近被访问过,那么将来被访问的几率也更高” 这一假设来工作的。LRU 算法是一种高效的缓存替换策略,在各种系统中都有广泛的应用。通过 Java 的 LinkedHashMap 或者自己实现双向链表和 HashMap 结合的方式,我们可以轻松地实现 LRU 缓存。原创 2025-01-17 13:14:17 · 368 阅读 · 0 评论 -
Kafka使用教程和案例详解
本文详细介绍了 Kafka 的基本概念、安装配置、使用教程以及实际应用案例。Kafka 作为一个高性能的分布式消息系统,广泛应用于实时数据处理、日志收集、消息队列等领域。通过本文的介绍,相信读者可以掌握 Kafka 的基本使用方法,并能够在实际项目中应用 Kafka 提高数据处理能力。通过配置和使用 Kafka,开发者可以构建高效、可靠的流处理系统,满足各种实时数据处理需求。版权声明:原创博主:牛哄哄的柯南[哈哈][抱拳]加油!共同努力!Keafmd牛哄哄的柯南,期待你的。原创 2024-06-14 20:45:00 · 3299 阅读 · 1 评论 -
接雨水【中等难度】
定义左右指针分别指向数组的左右边界,同时定义左边最大高度和右边最大高度变量。遍历数组,如果左指针的高度小于右指针的高度,则将左边最大高度更新为左指针的高度,否则将右边最大高度更新为右指针的高度。然后根据左右最大高度和当前指针的高度计算当前位置可以接的雨水量,并将结果累加。给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。keep accumulate for my dream【共勉】原创 2024-02-07 12:15:54 · 179 阅读 · 0 评论 -
组合总和【中等难度】
这是一个经典的回溯法问题,我们可以通过递归的方式来搜索所有可能的组合。这样,通过回溯的方式,我们可以搜索所有可能的组合,得到最终的结果。keep accumulate for my dream【共勉】候选数组中的数字可以无限制重复被选取。,找出候选数组中所有可以使数字和为。原创 2024-01-06 21:13:21 · 960 阅读 · 0 评论 -
岛屿的数量【中等难度】
这是一个典型的深度优先搜索(DFS)问题。我们遍历整个二维网格,当找到一个岛屿的起始点(即值为 ‘1’)时,通过 DFS 将该岛屿标记为已访问,并递归地访问相邻的陆地,直到岛屿的所有部分都被访问完。在整个过程中,每找到一个岛屿的起始点,就将岛屿数量加一。给定一个由 ‘1’(陆地)和 ‘0’(水域)组成的二维网格,计算岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向或垂直方向上相邻的陆地连接形成。keep accumulate for my dream【共勉】这里假设网格的四个边界也被水包围。原创 2023-12-18 21:15:00 · 538 阅读 · 0 评论 -
单词接龙【中等难度】
这是一个经典的单词变换问题,通常使用广度优先搜索(BFS)来解决。我们可以将单词看作图中的节点,如果两个单词可以通过一次变换相互转换,那么它们之间有一条边。这段代码首先将单词列表存储在一个集合中,然后使用BFS进行搜索。在搜索过程中,我们逐个改变每个字母,生成新的单词,并检查它是否在字典中。这是一道有趣而又具挑战性的中等难度题目,希望这个题解能帮助您理解并解决这个问题。keep accumulate for my dream【共勉】的最短变换序列的长度。),以及一个字典的单词列表,找到从。原创 2023-11-01 06:00:00 · 399 阅读 · 0 评论 -
Combination Sum IV【中等难度】
keep accumulate for my dream【共勉】组合中的数字可以在组合中出现任意次。这道题可以使用动态规划来解决。我们可以定义一个一维数组。希望这篇题解有助于理解并解决这道中等难度的力扣问题。只有一种组合方式,就是什么都不选。数组,并根据动态规划的思想计算。的每种组合中,从而获得总和为。给定一个由正整数组成的数组。就是答案,它表示总和为。这表示我们将当前的数。原创 2023-10-31 19:00:00 · 256 阅读 · 0 评论 -
深入理解递归算法:从基础到实践
递归是一种通过将问题分解成更小但相似的子问题来解决问题的方法。递归函数会反复调用自身,直到达到某个终止条件,然后将结果合并以得到最终解。原创 2023-10-18 21:32:28 · 232 阅读 · 0 评论 -
生成窗口最大值数组【中等难度】
这段代码的时间复杂度为 O(n),其中 n 是数组的长度。通过使用双端队列,我们可以在常数时间内获取窗口中的最大值。keep accumulate for my dream【共勉】原创 2023-07-04 16:38:32 · 600 阅读 · 0 评论 -
了解动态规划算法:原理、实现和优化指南
动态规划(Dynamic Programming,简称 DP)是一种通过将原问题拆分成子问题并分别求解这些子问题来解决复杂问题的算法思想。它通常用于求解优化问题,它的核心思想是将原问题分解成一系列的子问题,通过找到子问题之间的递推关系,可以避免重复计算,从而大幅提高计算效率。动态规划算法通常需要满足以下条件:最优子结构:问题的最优解可以通过子问题的最优解来求得。无后效性:子问题的解一旦确定,就不会受到后续阶段的决策影响。原创 2023-03-06 19:30:49 · 1227 阅读 · 2 评论 -
简化路径【中等难度】
给你一个字符串 path ,表示指向某一文件或目录的Unix 风格 绝对路径 (以 '/' 开头),请你将其转化为更加简洁的规范路径。在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任意多个连续的斜杠(即,'//')都被视为单个斜杠 '/' 。 对于此问题,任何其他格式的点(例如,'...')均被视为文件/目录名称。请注意,返回的 规范路径 必须遵循下述格式:始终以斜杠 '/' 开头原创 2023-03-02 17:31:58 · 371 阅读 · 0 评论 -
字符串中不同整数的数目【简单难度】
字符串中不同整数的数目给你一个字符串 word ,该字符串由数字和小写英文字母组成。 请你用空格替换每个不是数字的字符。例如, 将会变成 。注意,剩下的这些整数为(相邻彼此至少有一个空格隔开):、、和 。 返回对 word 完成替换后形成的整数的数目。 只有当两个整数的的十进制表示不同, 才认为这两个整数也不同。解法一:API直接替换时间复杂度:O(n)空间复杂度:O(n)解法二: 模拟使用Set进行种类的去重,若当前字符为数字,那么找到其终止位置后,去除前导0保存在Set中即可。对原创 2022-12-06 21:38:05 · 2519 阅读 · 0 评论 -
剑指 Offer 12. 矩阵中的路径【中等难度】
矩阵中的路径给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 例如,在下面的 3×4 的矩阵中包含单词 “ABCCED”(单词中的字母已标出)。本问题是典型的矩阵搜索问题,可使用 深度优先搜索(DFS)+ 剪枝 解决。深度优先搜索: 可以理解为暴力法遍历原创 2022-12-05 12:13:30 · 1376 阅读 · 1 评论 -
分割数组(力扣中等难度)
给定一个数组nums,将其划分为两个连续子数组left和right,使得:left中的每个元素都小于或等于right中的每个元素。left 和right都是非空的。left 的长度要尽可能小。在完成这样的分组后返回left的长度。用例可以保证存在这样的划分方法。原创 2022-10-25 13:53:22 · 1842 阅读 · 13 评论 -
无重复字符的最长子串(力扣中等难度)
给定一个字符串 `s` ,请你找出其中不含有重复字符的 最长子串 的长度。原创 2022-09-23 14:31:32 · 955 阅读 · 16 评论 -
两数相加【力扣:中等难度】
两数相加【力扣:中等难度】原创 2022-09-21 15:12:17 · 1695 阅读 · 0 评论 -
树的子结构
输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)B是A的子结构, 即 A中有出现和B相同的结构和节点值。例如:4/1返回 true,因为 B 与 A 的一个子树拥有相同的结构和节点值。示例 1:输入:A = [1,2,3], B = [3,1]输出:false示例 2:输入:A = [3,4,5,1,2], B = [4,1]输出:true。原创 2022-08-24 15:47:17 · 579 阅读 · 0 评论 -
求解汉诺塔问题【修改版】
求解汉诺塔问题【修改版】原创 2022-06-29 16:01:47 · 619 阅读 · 17 评论 -
用一个栈实现另一个栈的排序
用一个栈实现另一个栈的排序原创 2022-06-27 15:05:37 · 844 阅读 · 21 评论 -
猫狗队列的问题
实现一种狗猫队列的结构,自定义要求出队列原创 2022-06-24 15:02:25 · 628 阅读 · 0 评论 -
仅用递归函数和栈操作逆序一个栈
仅用递归函数和栈操作逆序一个栈原创 2022-06-23 10:46:39 · 584 阅读 · 0 评论 -
由两个栈组成的队列
由两个栈组成的队列原创 2022-06-22 15:47:36 · 561 阅读 · 0 评论 -
设计一个有getMin功能的栈
实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。 1.pop、push、getMin操作的时间复杂度都是O(1)。 2.设计的栈类型可以使用现成的栈结构。原创 2022-06-20 15:34:15 · 1428 阅读 · 5 评论