数据结构与算法

深入浅出一下从电子商务到社交网络:排序算法在实际业务中的关键角色——动画可视化排序算法题试炼

本篇技术博文摘要 🌟 排序算法题全面试炼 引言 📘 在这个变幻莫测、快速发展的技术时代,与时俱进是每个IT工程师的必修课。 我是盛透侧视攻城狮,一名什么都会一丢丢的网络安全工程师,也是众多技术社区的活跃成员以及多家大厂官方认可人员,希望能够与各位在此共同成长。 ​  上节回顾 目录

MongoDB 实用数组聚合操作 (3)

前言 MongoDB 提供了 aggregate 聚合操作函数对多个文档进行筛选、排序、统计等操作,这些操作可以在上两篇中查看: MongoDB 实用数组聚合操作 (1) MongoDB 实用数组聚合操作 (2) 本篇是聚合操作的最后一篇,将介绍如何在聚合操作中实用条件比较。 对字段做布尔转换 使用$project 操作符时,可以对字段进行条件比较,从而转为布尔值,例如将年龄转换为是否超过30

dfs记忆化搜索刷题 + 总结

文章目录 记忆化搜索 vs 动态规划 斐波那契数 题解 代码 不同路径 题解 代码 最长递增子序列 题解 代码 猜数字大小II 题解 代码 矩阵中的最长递增路径 题解 代码 总结 记忆化搜索 vs 动态规划 1. 记忆化搜索:有完全相同的问题/数据保存起来,带有备忘录的递归 2.

数据结构:线性表的基本操作与链式表达

个人主页 文章专栏 成名之作——赛博算命之梅花易数的Java实现 陆续回三中,忘回漏回滴滴~感谢各位大佬的支持 一.线性表的定义和基本操作 1.1定义线性表是具有相同数据类型的n个数据元素的有序数列,n为表长第一个元素叫表头元素,除了他,每个元素有且仅有一个直接前驱最后一个元素叫表尾元素,除了他,每

【优选算法 | 二分查找】二分查找算法解析:如何通过二段性优化搜索效率

算法 相关知识点 可以通过点击 以下链接进行学习 一起加油! 双指针 滑动窗口 在本篇文章中,我们将深入解析二分查找算法的核心原理。从基本概念到实际应用,带你了解如何利用二分查找高效定位元素,提升搜索效率。无论你是刚接触算法的新手,还是想优化代码性能的老手,二分查找都是你不可忽视的强大工具&#

数据结构与算法 - 有向图的环检测:DFS与拓扑排序的两种方案

👋 大家好,欢迎来到我的技术博客! 💻 作为一名热爱 Java 与软件开发的程序员,我始终相信:清晰的逻辑 + 持续的积累 = 稳健的成长。 📚 在这里,我会分享学习笔记、实战经验与技术思考,力求用简单的方式讲清楚复杂的问题。 🎯

动态规划完整入门

动态规划完整入门教程 (Java版) 目录 什么是动态规划 核心概念 动态规划vs递归vs贪心 解题步骤 经典入门问题 常见问题类型 优化技巧 实战练习 什么是动态规划 简单理解动态规划(Dynamic Programming,简称DP)是一种通过把原问题分解为相对简单的子问题的方式来求解复杂问题的方法。核心思想:把已经解决过的子问题的答

详解数据结构之跳表

目录跳表的定义跳表的演化过程跳表的优化思路跳表如何保证效率跳表的时间复杂度跳表的空间复杂度跳表的查找跳表的插入跳表的删除跳表的模拟实现跳表与平衡搜索树及哈希表的对比跳表的定义跳表是由William Pugh(音译为威廉·普)发明的,最早出现于他在1990年发表的论文《Skip Lists: A Probabilistic Alternative to Balanced Trees》&

【tcp】 TCP的连接重连&QUIC的连接迁移

TCP的连接重连之痛 一条 TCP 连接是由四元组标识的(源 IP,源端口,目的 IP,目的端口)。什么叫连接迁移呢?就是当其中任何一个元素发生变化时,这条连接依然维持着,能够保持业务逻辑不中断。当然这里面主要关注的是客户端的变化,因为客户端不可控并且网络环境经常发生变化,而服务端的 IP 和端口一般都是固定的。 比如大家使用手机在 WIFI 和 4G 移动网络切换时,客户端的 IP 肯定会发生变

发布订阅 - 确保用户注册成功发送短信通知

Spring事务监听机制—使用@TransactionalEventListener处理数据库事务提交成功后再执行操作 为什么使用     在项目中,往往需要执行数据库操作后,发送消息或事件来异步调** * 用其他组件执行相应的操作,例如:   用户注册后发送激活码;   配置修改后发送更新事件等。   但是,数据库的操作如果还未完成,此时异步调用的方法查询数据库发现没有数据,这就会出现问题。