摘要:
一. 准备 服务器:阿里云Centos Stream 9 Mysql:mysql-8.0.37-linux-glibc2.28-x86_64.tar.xz 下载地址:https://dev.mysql.com/downloads/mysql/ 二. 步骤 1. 下载安装包 首先,你需要从MySQL的 阅读全文
摘要:
一. 前言 1. 什么是延迟队列? 延迟队列是一种特殊的队列,它允许将消息或任务延迟一段时间后再进行处理1。这种队列为那些需要延迟处理的场景提供了一种可靠的延迟处理机制。其工作原理是将消息或任务存储在队列中,并为每个消息或任务设置一个延迟时间。当延迟时间到达时,队列会将消息或任务取出并进行相应的处理 阅读全文
该文被密码保护。 阅读全文
该文被密码保护。 阅读全文
摘要:
一. 说明 1. 目标 这里主要测试 EFCore8.x 版本提供的批量删除 和 批量更新; 以及老杨的框架 [Zack.EFCore.Batch] 以SQLServer为载体进行测试。 2. 准备 (1). 需要的程序集 必须的程序集: Microsoft.EntityFrameworkCore. 阅读全文
摘要:
一. 基础升级 1. 版本升级 将各个类库、项目都升级为 .Net8.0 2. AutoFac升级 【AutoFac 6.4.0】 升级到 【8.0.0】 【Autofac.Extensions.Depend 8.0.0】 升级到 【9.0.0】 3. 基本库升级 【System.Text.Json 阅读全文
摘要:
一. 主构造函数 C# 12 引入了主构造函数,这是一种简明的语法,用于声明一些构造函数,它们的参数在类型主体中的任何位置可用 1. 初始化属性 /// <summary> /// 普通写法 /// </summary> public class People1 { public string na 阅读全文
摘要:
一. 新功能清单 详见:https://learn.microsoft.com/zh-cn/ef/core/what-is-new/ef-core-8.0/whatsnew 二. 中断性变更 1. LINQ 查询中的 Contains 低版本SQLServer失效 (1). 说明 从 EF Core 阅读全文
摘要:
一. 新变化 详见: https://learn.microsoft.com/zh-cn/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0 如下图: 二. SignalR改变 JS中在ASP.NET Core 7.0 或更早版本 阅读全文
摘要:
一. 先序遍历 1. 题目分析 根节点→左子树→右子树 (先、中、后 指的是根节点的位置,然后都是先左后右) leetcode:https://leetcode.cn/problems/binary-tree-preorder-traversal/ 难度:【简单】 2. 递归的几种写法 (1). 函 阅读全文
摘要:
一. 不同路径 1. 题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能 “向下或者向右” 移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示例: leetcode:https 阅读全文
摘要:
一. 反转二叉树 一. 题目描述 给你一棵二叉树的根节点 root ,反转这棵二叉树,并返回其根节点。 示例: leetcode:https://leetcode.cn/problems/invert-binary-tree/description/ 难度:【简单】 二. 思路分析1-递归 1. 首 阅读全文
摘要:
一. 删除倒数第N个节点 一. 题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例: leetcode地址:https://leetcode.cn/problems/remove-nth-node-from-end-of-list/description/ 难度:【中 阅读全文
摘要:
一. 滑动窗口最大值 一. 题目描述 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。 滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。(求的是窗口每次移动中的最大值,最后组成的一个数组) 详见:https: 阅读全文
摘要:
一. 二. 三. ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权 阅读全文
摘要:
一. 二叉树展开为链表 1. 题目描述 给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。 展开后的单链表应该与二叉树 先序遍历 顺序相同。(补充:先序遍历指的是 访 阅读全文
摘要:
一. 最长公共前缀 1. 题目描述 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 详见:https://leetcode.cn/problems/longest-common-prefix/ 难度:【简单】 2. 思路分析 (1). 默认以数组中的第1个元素 阅读全文
摘要:
一. 爬楼梯 1. 题目描述 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 详见: https://leetcode.cn/problems/climbing-stairs/description/ 2. 分析 (1).根据题 阅读全文
摘要:
一. 动态规划详解 1. 定义 动态规划(英语:Dynamic programming,简称DP)是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划也是互联网大厂和算法竞赛中非常喜欢考察的一类题目:因为通过动态规划可 阅读全文
摘要:
一. 复杂度总结 二. 性能测试 import BundleSort4 from './01-冒泡排序'; import selectionSort2 from './02-选择排序'; import insertionSort from './03-插入排序'; import mergeSort 阅读全文
摘要:
一. 二. 三. ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权 阅读全文
摘要:
一. 归并排序 【非常重要,必须手写出来,还必须理解,必须能快速手写出来】 1. 定义 它的基本思想是将待排序数组分成若干个子数组。然后将相邻的子数组归并成一个有序数组。最后再将这些有序数组归并(merge)成一个整体有序的数组。 2. 流程 步骤一:分解(Divide):归并排序使用递归算法来实现 阅读全文
摘要:
一. 认识排序算法 1. 排序算法的定义 在计算机科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串资料依照特定排序方式排列的算法。 2. 排序算法的分类标准 计算的时间复杂度:使用大O表示法,也可以实际测试消耗的时间; 内存使用量(甚至是其他电脑资源):比如外部排 阅读全文
摘要:
一. 红黑树简介 1. 背景 红黑树(英语:Red–black tree)是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构。 它在1972年由鲁道夫·贝尔发明,被称为“对称二叉B树”,它现代的名字源于Leo J. Guibas和罗伯特·塞奇威克于1978年写的一篇论文。 2. 性质 除了符 阅读全文
摘要:
一. 平衡树详解 1. 什么是平衡树? 平衡树(Balanced Tree)是一种特殊的二叉搜索树: 其目的是通过一些特殊的技巧来维护树的高度平衡; 从而保证树的搜索、插入、删除等操作的时间复杂度都较低; 2. 为什么需要平衡树? 如果一棵树退化成链状结构,那么搜索、插入、删除等操作的时间复杂度就会 阅读全文
摘要:
一. 双端队列 1. 回顾 默认的队列是先进先出的, 即只允许在front前端出队,在near后端入队 2. 什么是双端队列? 允许在队列的两端进行出队 和 入队 3. 实操 继承之前的队列MyQueue,然后新增addFront、removeBack两个方法即可 PS: 双端队列了解即可,实用性不 阅读全文
摘要:
一. 堆简介 1. 什么是堆结构? 堆的本质是一种特殊的树形数据结构,使用完全二叉树来实现,平时使用的基本都是二叉堆 二叉堆用树形结构表示出来是一颗完全二叉树,通常在实现的时候我们底层会使用数组来实现。 二叉堆又可以划分为最大堆和最小堆。 (1) 最小堆:堆中每一个节点都小于等于(<=)它的子节点; 阅读全文
摘要:
一. 循环链表简介 1. 什么是循环链表? 在普通链表的基础上,最后一个节点的下一个节点不再是 null,而是指向链表的第一个节点。 这样形成了一个环,使得链表能够被无限遍历。 这样,我们就可以在单向循环链表中从任意一个节点出发,不断地遍历下一个节点,直到回到起点。 二. 单项链表改造 1. 目的 阅读全文
摘要:
一. 图详解 1. 邻接矩阵 (1). 说明 邻接矩阵让每个节点和一个整数项关联,该整数作为数组的下标值。 我们用一个二维数组来表示顶点之间的连接。 二维数组[0][2] -> A -> C (2). 解析 在二维数组中,0表示没有连线,1表示有连线。 通过二维数组,我们可以很快的找到一个顶点和哪些 阅读全文