自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SQL数据库面试题分类清单(二)

明确了一对多,多对一等关系。

2025-11-25 20:07:15 858

原创 SQL数据库面试题分类清单(一)

子查询可以。

2025-11-22 18:47:55 790

原创 [C#] NO.4 我的第一个C#项目

这是一个基于C#的Console项目——个人经济管理系统。它能帮助用户高效管理日常收支,提供数据统计和预算管理功能。作为一个轻量化应用,有大学生,上班族等广泛受众群体。账号支持,数据加密,云同步等未来方向。数据访问层抽象,支持多种存储方式。清晰的类职责分离,高内聚,低耦合。严格的层级分离,便于维护和测试。统计计算,数据聚合,趋势分析。1.项目框架——设计模式。3.数据设计——数据结构。4.用户体验——交互流程。类桥接模式,依赖倒置原则。2.功能灵魂——算法。松耦合设计,易于拓展。高效的数据筛选和统计。

2025-11-16 20:26:10 642

原创 [C#] NO.3 创建项目前的准备——了解Git操作

当你掌握了clone,add,commit,push,pull,checkout,merge这几个核心命令,你就能应对90%以上的日常开发场景。它是一个极其强大的工具,是现代软件开发的基石。

2025-11-09 17:18:59 1381

原创 [C#] NO.2 常用知识总结

LINQ = 语言集成查询,让你在C#代码中直接写查询语句来操作数值。

2025-11-08 17:23:28 783

原创 [C#] NO.1 学习入门

C#,读作C Sharp,是一种由微软开发的现代,面向对象的高级编程语言,它结合了C++的强大功能和Visual Basic的简单易用性。

2025-11-06 20:53:50 775

原创 [开源大数据] NO.2 Hadoop集群环境的配置

备份原始配置文件+编辑/etc/yum.repos.d/CentOS-Base.repo文件,修改centos镜像源配置。将所有的 mirrorlist 行替换为 baseurl,并配置国内的镜像源。按i进入编辑模式,:wq保存并退出,左键选中即为复制,直接右键可粘贴。可通过ctrl+c停止ping命令。添加好后给每台虚拟机改名,方便识别。6.4.4检查jdk是否配置成功。按i进入编辑模式,输入以下代码。按ESC退出,输入:wq保存。6.4.2添加jdk路径。重复此操作,再配置几台。

2025-11-02 14:06:28 442

原创 [LeetCode] No.12 滑动窗口深度刨析与总结

滑动窗口的学习之旅告诉我们:优秀的算法不仅是技巧的堆砌,更是思维的艺术。当我们能自如地在“物理窗口”与“逻辑窗口”间切换,在“显式条件”与“隐式条件”间架桥时,我们就真正掌握了这种算法思维。在算法学习道路上,滑动窗口是一道重要的分水岭。经过这段时间的学习,让我们对滑动窗口进行一场系统性的刨析与总结。③种类平衡:char1_freq == char2_freq == K。第四站:LeetCode LRC 010.和为K的子数组。从“物理窗口”到“逻辑窗口”的思维转变!创新性转化问题,创造滑动窗口应用场景。

2025-10-30 16:47:02 695

原创 [开源大数据] NO.1 Hadoop操作系统,工具的安装与配置

Hadoop是一个开源的,可靠的,可扩展的分布式计算和存储框架。它让成千上万台普通的,廉价的电脑连接在一起,组成一个强大的超级计算机,共同处理海量数据。在配置硬件时可以删掉不必要的声卡等设备,删到如图,然后选择之前下载好的CentOS7文件就好。你把货物分散存放在这些小平房里,然后雇佣一群工人,每个工人负责自己那间平房里的货物。想象一下,你有一个巨大的仓库,里面堆满了各种各样的货物(这些货物就是你的。这个仓库太大了,一栋建筑根本放不下,也管理不过来。,系统会自动把它切成小块,分散到不同的平房里。

2025-10-23 16:30:43 858

原创 [LeetCode] No.11 滑动窗口进阶详解(二)

滑动窗口算法通过巧妙地维护一个动态变化的窗口,避免了重复计算,显著提高了算法效率。掌握滑动窗口的关键在于:1.识别适合使用滑动窗口的问题模式2.正确维护窗口的左右边界3.高效更新窗口能的状态信息4.根据问题特点选择合适的优化策略。

2025-10-22 17:56:25 1237

原创 [LeetCode] No.10 滑动窗口进阶详解(一)

滑动窗口算法是一种用于处理数组/字符串子数组或子串问题的优化技术。它通过维护一个窗口(通常是连续的子数组或子串),在数据流上滑动这个窗口来解决问题,避免了重复计算,将时间复杂度从O(n²)优化到O(n)

2025-10-17 20:33:30 404

原创 [LeetCode] No.9 新手入门之滑动窗口与哈希表

unordered_set可以看作unordered_map的特殊情况,仅关注键的存在而不关心对应的值。

2025-10-13 20:11:57 851

原创 [LeetCode] No.8 新手入门之数组与双指针

双指针是解决数组问题的利器,掌握这种技巧能显著提高解题效率。

2025-10-08 17:41:48 607

原创 [LeetCode] No.7 二叉树通关攻略

二叉树种类:满二叉树,完全二叉树,二叉搜索树(BST,左小右大),平衡二叉树(AVL),红黑树(了解即可)必做题:144,94,145,102,104,101,226,98,112,236全部独立AC。深度优先搜索(DFS):前序遍历,中序遍历,后序遍历。3.能独立分析不同遍历方式的时间/空间复杂度(均为O(n))。看到递归题,能快速定义出递归函数的含义(返回值,递归关系)二叉树结构:根节点,子节点,叶节点,深度,高度。看到遍历题,能快速写出递归和非递归写法。看到BST题,能想到中序遍历和大小关系。

2025-09-20 18:38:10 853

原创 [LeetCode] No.6 公共祖先与路径问题(回溯法)

在实际应用中,需要注意回溯时状态的恢复(如弹出当前节点),以确保正确性。在二叉树的相关问题中,寻找两个节点的最近公共祖先(LCA)是一个经典且常见的问题。同时,与路经相关的问题也往往可以通过回溯法高效解决。回溯法是一种通过探索所有可能的候选解来找出所有解的算法。如果候选解被确认不是解(或者至少不是最后一个解),回溯法会丢弃该候选解,回退到上一步,并尝试其他候选解。递归是方法论,回溯法是应用策略。回溯法建立在递归的基础上,但增加了状态恢复机制。回溯法和递归是密切相关的概念,但它们有不同的侧重点和应用场景。

2025-09-19 19:12:49 403

原创 [LeetCode] No.5 递归的属性与判断

3.效率与可读性的权衡:递归代码通常更简洁、易读,但可能带来额外的性能开销。它将复杂问题分解为更小的、相似的子问题,直到达到一个简单到可以直接解决的基础情况。递归是一种重要的算法思想,适用于具有自相似性的问题。1.自顶向下的递归(height()函数即“求二叉树的最大深度”,isBalanced()函数思路类似前序遍历(根左右))1.递归解法(p(左)q(右)双指针递归判断每一层是否相等)1.问题可分解为相似子问题,如树或图的遍历,分治算法。2.自底向上的递归(思路类似中序遍历(左右根))

2025-09-16 17:42:29 635

原创 [LeetCode] No.4 二叉树层次遍历全解析:从基础到进阶

掌握这些遍历方式不仅有助于理解二叉树的结构特性,也是解决最短路径问题,层级链接问题,边界和视图问题等问题的基础,熟练运用它们,将为你在算法学习与开发实践中解决更复杂的问题打下坚实的根基。​。

2025-09-15 17:53:04 584

原创 [LeetCode] No.3 Morris遍历算法讲解(附实例)

Morris算法通过巧妙地利用空指针,在不使用额外空间的情况下实现了二叉树的中序遍历。这种"借道而行"的思路不仅展现了算法设计的精妙,也为处理大规模树结构提供了高效的解决方案。理解并掌握这一算法,将大大提升你在树相关问题上的解决能力。

2025-09-10 19:38:52 514

原创 [LeetCode] No.2 二叉搜索树:基本用法详解

二叉搜索树作为数据结构领域的重要基础,不仅以其简洁而高效的设计思想在诸多应用中发挥着关键作用,更为我们理解复杂树形结构奠定了坚实基础。从数据库索引到语言标准库,从算法设计到系统实现,二叉搜索树的价值贯穿了整个计算机科学领域,希望我的文章能够帮助读者建立起对这一重要数据结构的基本认识,并在实际开发中灵活运用其特性解决相关问题。

2025-09-07 19:28:08 596

原创 [LeetCode] No.1 二叉树的遍历:多重解法详解(递归->迭代)

摘要:本文介绍了二叉树的三种基本遍历方式——前序、中序和后序遍历。前序遍历顺序为根-左-右,中序为左-根-右,后序为左-右-根。文章详细比较了三种遍历的特点和应用场景,并用递归和迭代两种实现方式展示了具体的代码实现。递归方法直接模拟遍历过程,而迭代方法利用栈结构模拟递归调用。每种遍历方式的代码实现突出了它们存储节点值的时机差异,为理解和应用二叉树遍历提供了清晰的指导。

2025-09-05 15:52:23 673 1

空空如也

空空如也

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

TA关注的人

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