logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【贪心算法】加油站,单调递增的数字,坏了的计算器,合并区间,用最少数量的箭引爆气球

本文总结了LeetCode上几道关于贪心算法的题目,包括加油站、单调递增数字、坏的计算器、合并区间和无重叠区间。解题思路主要围绕贪心策略展开:对于加油站问题,通过比较油量差寻找可行起点;单调递增数字采用递归调整数字位置;坏的计算器采用逆向思维;合并区间按左端点排序后处理重叠;无重叠区间则优先保留右端点小的区间。这些题目展示了贪心算法在不同场景下的灵活应用,通过局部最优解逐步达到全局最优。

文章图片
#贪心算法#算法
【数据结构】堆与优先级队列PriorityQueue

优先级队列是一种按元素优先级决定出队顺序的数据结构,底层通过堆实现。堆分为小堆和大堆,具有完全二叉树性质,可使用数组高效存储。堆的核心操作包括向下调整(O(log n))、向上调整(O(log n))以及建堆(O(n))。基于这些操作可模拟优先级队列的插入、删除等功能。Java中的PriorityQueue默认实现小堆,支持自动扩容,插入和删除操作时间复杂度为O(log n),适用于需要动态优先级

文章图片
#数据结构#算法#java
【算法日记】排序算法:原理、实现、性能与应用

本文系统介绍了七大基于比较的排序算法,主要分为插入排序(直接插入排序、希尔排序)、选择排序(直接选择排序、堆排序)、交换排序(冒泡排序、快速排序)和归并排序四大类。文章首先阐述了排序的基本概念,包括稳定性、内部与外部排序的区别。随后详细讲解了每种算法的核心思想、实现过程(附Java代码示例)、时间复杂度分析(如直接插入排序O(N²)、堆排序O(NlogN))及适用场景。特别强调了不同算法在稳定性(

文章图片
#排序算法#数据结构#算法
【贪心算法】最长回文串,增减字符串匹配,分发饼干,最优除法,跳跃游戏

本文总结了6道LeetCode贪心算法题目的解题思路和代码实现。包括最长回文串(统计字符频率)、增减字符串匹配(双指针填数)、分发饼干(排序+双指针)、最优除法(数学推导)、跳跃游戏II(动态规划/贪心策略)和跳跃游戏(贪心判断可达性)。每道题目都提供了清晰的解题思路和对应的Java代码实现,涵盖了贪心算法的常见应用场景,如字符串处理、数组操作和游戏策略等。这些解法都体现了贪心算法"局部最优解导向

文章图片
#贪心算法#游戏#哈希算法
【贪心算法】柠檬水找零,将数组和减半的最少操作次数,最大数,摆动序列, 最长递增子序列,递增的三元子序列

本文介绍了贪心算法及其应用,通过5个LeetCode题目展示了贪心策略的实现: 柠檬水找零:通过优先使用大额钞票的策略处理找零问题,确保5元钞票充足。 数组减半操作:使用大根堆每次处理最大元素,快速减少数组总和。 最大数拼接:通过自定义字符串比较规则,将数字拼接成最大数值。 摆动序列:统计波峰波谷数量确定最长摆动子序列长度。 递增子序列:维护最小末尾数组,利用二分查找优化查找过程。 这些题目展示了

文章图片
#贪心算法#算法
【优选算法】链表:两数相加,两两交换节点,重排链表,合并K个升序链表,K个一组反转链表

本文总结了链表操作的常用技巧和解题方法。技巧包括:多画图辅助理解、使用虚拟头结点简化边界处理、创建局部变量降低复杂度,以及快慢双指针解决环检测等问题。操作部分介绍了创建节点、尾插和头插等基本方法。重点解析了LeetCode两数相加问题(LC2)的模拟解法,通过维护进位变量和尾插法构建结果链表。同时拓展了牛客网链表相加问题(NC40),强调需要先逆序链表再进行相加操作。代码示例展示了如何通过逆序、相

文章图片
#算法#链表#数据结构
【算法日记】二叉树:转换双向链表,层序遍历,找公共祖先,构建二叉树

本文介绍了三个二叉树相关算法题目的解题思路与代码实现。1. 二叉搜索树转双向链表(BM30):通过中序遍历调整指针指向,要求空间复杂度O(1),时间复杂度O(n);2. 二叉树遍历(KY11):根据先序字符串构建二叉树并进行中序遍历,处理特殊字符'#'表示空节点;3. 二叉树的层序遍历(LC102):使用队列实现广度优先搜索,按层输出节点值。每个问题都提供了详细的分析图示和Java代码示例,重点讲

文章图片
#算法#链表#数据结构
【数据结构】认识二叉树

本文系统讲解了树型结构和二叉树的核心知识。首先介绍了树的定义、特点及重要概念(如度、层次、深度等),并阐述了树的表示方法和文件系统应用。其次重点解析了二叉树的定义、特性、两种特殊类型(满二叉树和完全二叉树)及其五大核心性质。最后说明了二叉树的两种存储结构(顺序存储和链式存储)并提供了Java代码实现示例。全文通过理论讲解与图示相结合的方式,全面覆盖了树和二叉树的基础知识体系。

文章图片
#数据结构
【算法日记】链表经典算法(C):移除元素,反转链表,约瑟夫环问题,找中间节点,分割链表

本文介绍了五种链表操作的经典算法题解:1)删除特定值节点,通过哨兵节点统一处理;2)反转链表,使用双指针迭代实现;3)合并有序链表,采用哨兵节点简化拼接;4)寻找中间节点,运用快慢指针法;5)链表分割,创建两个子链表后拼接。每个问题都包含示例说明、解题思路、代码实现及解析,重点展示了哨兵节点和双指针等技巧在链表操作中的灵活应用。

文章图片
#算法#leetcode#链表
【Spring Cloud】Nacos注册中心

Nacos作为微服务核心组件,集注册中心与配置中心于一体,替代Eureka成为国内主流。支持多语言、环境隔离(Namespace)、动态健康检查(临时/永久实例)、负载均衡(权重、集群优先)及配置热更新。通过Spring Cloud Alibaba集成,实现服务自动注册发现、远程调用与配置管理,提升系统可维护性与可用性。

文章图片
#spring cloud#spring#后端
    共 41 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 请选择