算法leetcode day 30

LeetCode 235. 二叉搜索树的最近公共祖先

#题目链接:[LeetCode 235. 二叉搜索树的最近公共祖先](https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-search-tree/description/) ##题意: **给定一个二叉搜索树, 找到该树中两 ......
祖先 LeetCode 235

LeetCode 701. 二叉搜索树中的插入操作

#题目链接:[LeetCode 701. 二叉搜索树中的插入操作](https://leetcode.cn/problems/insert-into-a-binary-search-tree/) ##题意: **给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉 ......
LeetCode 701

0704海亮Day1技术杂题选做

## P5014 水の三角(修改版) ### 题意 现在我们定义一个三角图是像上面一样的图。。 请求出一个无限大的三角图从 1 号点走到 $u$ 号点的方案数。 有 $T$ 组询问。 ### 分析 首先我们查看操作对我们当前位置的影响。 左下:$(1,0)$;右下:$(1,1)$;右:$(0,1)$ ......
技术 0704 Day1 Day

LeetCode 236. 二叉树的最近公共祖先

#题目链接:[LeetCode 236. 二叉树的最近公共祖先](https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/description/) ##题意: **给定一个二叉树, 找到该树中两个指定节点的最近公共祖 ......
祖先 LeetCode 236

Day01-7 类型转换

由于java是强类型语言,所以要进行有些运算的时候,需要用到类型转换 低 > 高 byte,short,char —> int —> long —> float —> double 运算中,不同类型的数据先转化为同一类型,然后进行运算 //强制转换(类型)变量名int i = 128;byte a ......
类型 Day 01

(Leetcode)746

```java // 方式一:第一步不支付费用 class Solution { public int minCostClimbingStairs(int[] cost) { int len = cost.length; int[] dp = new int[len + 1]; // 从下标为 0 ......
Leetcode 746

Java基础-Day10

# Java基础-Day10 ## 对象作为参数传递给方法 - 实例: 1. 定义一个Circle类,包含一个double型的radius属性代表圆的半径,一个findArea()方法返回圆的面积 2. 定义一个PassObject类,在类中顶一个方法printArea(),该方法的定义如下:pub ......
基础 Java Day 10

python基础day37 基于TCP、UDP协议的套接字编程和粘包现象

基于TCP协议的套接字编程(socket编程) 什么是Socket? 我们经常把Socket翻译为套接字,Socket是在应用层和传输层之间的一个抽象层,它把TCO/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信 套接字的分类: AF_UNIX:用在局域网中 AF_INET: ......
套接字 现象 基础 python day

leetcode 26. 删除有序数组中的重复项

## 直接法 ```java public int removeDuplicates(int[] nums) { if (nums == null) { return -1; } boolean start = false; int nextIndex = 1; for (int i = 1; i ......
数组 leetcode 26

leetcode 22. 括号生成

## 暴力枚举 ```java class Solution { public List generateParenthesis(int n) { List list = getAll(2 * n); List result = new ArrayList(); for (String item : ......
括号 leetcode 22

BSGS算法

今天刚学了个算法:BSGS算法(Baby-Step Giant-Step),即大步小步算法。常用于求解离散对数问题。 该算法可以在 $O(\sqrt p)$ 的时间内求解形如:$a^{x}\equiv b\pmod{p}$ 的高次同余方程。 **问题:** [P3846 [TJOI2007] 可爱的 ......
算法 BSGS

图书推荐管理系统Python,基于Django和协同过滤算法实现

## 一、介绍 图书推荐系统 / 图书管理系统,以Python作为开发语言,基于Django实现,使用协同过滤算法实现对登录用户的图书推荐。 ## 二、效果展示 ![1688450726836-3db42977-53e6-431c-9ee2-8f09e633cc1b](http://zwgroup. ......
算法 管理系统 Python Django 图书

直播源码开发,js 数据的创建时间是否大于30天或相隔天数

直播源码开发,js 数据的创建时间是否大于30天或相隔天数 //获取当前时间var day = new Date();//数据库的数据创建时间var time = creationTime;//把当前时间 数据库时间转换成毫秒数var starDate = Date.parse(time);var ......
天数 源码 时间 数据

算法竞赛中C++ vector的常规操作

# 算法竞赛中 C++ vector 的常规操作 ## 对 vector 的理解 vector 官方将其翻译为向量,但实际上是**变长**的**动态数组**,其可以存放各种类型的对象。 ## vector 定义语法 大致格式:```vector 数组名``` 在初始情况下,vector的大小是0,也 ......
算法 常规 vector

Day01-6 数据类型

数据类型 强类型语言 要求变量的使用要符合规定,所有变量都必须先定义后才能使用 java数据类型的两大类 基本数据类型 数值类型 整数类型 byte占1个字节范围:-128-127 shout占2个字节范围:-32768-32767 int占4个字节范围:-2147483648-2147483647 ......
类型 数据 Day 01

LeetCode 152. 乘积最大子数组

``` class Solution { public: static const int N=20010; int f[N],g[N]; int maxProduct(vector& nums) { int n=nums.size(); int res=nums[0]; f[0]=g[0]=num ......
乘积 数组 LeetCode 152

详解共识算法的Raft算法模拟数

摘要:Raft算法是一种分布式共识算法,用于解决分布式系统中的一致性问题。 本文分享自华为云社区《共识算法之Raft算法模拟数》,作者: TiAmoZhang 。 01、Leader选举 存在A、B、C三个成员组成的Raft集群,刚启动时,每个成员都处于Follower状态,其中,成员A心跳超时为1 ......
算法 共识 Raft

《数据结构与算法》之图

导言: 图是数据结构教材上的最后一种数据结构了,它的使用范围最广,最多,也是最贴合我们实际生活的,图是一个多对多的数据结构,在前面的学习,了解到了一对一的数据结构 线性结构,以及一对多的结构 树形结构,现在要学的多对多的结构 图, 图是对我们现实生活中很多实体的抽象,因为实际的生活中,的确关系是复杂 ......
数据结构 算法 结构 数据

数据结构与算法coding过程中的记录

1.init()时一定要记得malloc()申请新的内存空间(如果不申请内存空间程序返回的值是有内存里的脏数据,把人看得云里雾里找不到问题出在哪) 2.带头结点单链表尾插法要注意:若LNode *p = L->next; 循环条件是while(p != NULL){p = p->next;},那么最 ......
数据结构 算法 过程 结构 数据

Bellman–Ford 算法

[TOC] # Bellman-Ford 算法 贝尔曼-福特(Bellman–Ford)算法是一种基于松弛(relax)操作的最短路径算法,可以求出**有负权的图**的最短路径,并可以对最短路径不存在的情况进行判断。 # 记号 为了方便叙述,这里先给出下文将会用到的一些记号的含义。 - $n$ 为图 ......
算法 Bellman Ford

Python递归算法从入门到精通

递归是一种常见且重要的算法设计和解决问题的方法。它通过将问题分解为规模更小的子问题,并通过解决子问题来解决原始问题。递归算法的关键在于找到递归终止条件和递归调用的方式。本文将介绍递归的基本原理、应用场景,并通过相关的Python代码示例详细讲解递归算法的使用。 ## 一、递归的基本原理 递归算法的基 ......
算法 Python

【leetcode】【剑指 Offer 06】【从尾到头打印链表】

# c++ ## 第一个方法 ```c++ /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) ......
leetcode Offer

2023ACM暑假训练day 8-9 线段树

[toc] # DAY 8-9 线段树 训练地址:[传送门](https://vjudge.net/contest/566867) ## 训练情况简介 ## 题 **题意:** **思路:** ......
线段 2023 ACM day

机器学习Day002:简单线性回归

## 用一个简单的特征预测结果 这是一种根据自变量(X)的值来预测因变量(Y)的方法。假设两个变量时线性相关的。因此,我们试图找到一个线性函数,使得它能够尽可能准确地根据特征或自变量(x)来预测响应值(y)。 ![](https://img2023.cnblogs.com/blog/1732548/ ......
线性 机器 Day 002

代码随想录算法训练营第二十三天| 93.复原IP地址 78.子集 90.子集II

93.复原IP地址 思路: 先考虑合法的情况,然后再依次往path里面加字符,如果它的长度>4但是还没有到最末尾,也就是说他是错的,也就return出去 代码: 1 //根据给定的一组字符串,分出来可能正确的IP 2 //思路:切割,[start, i],其中长度为0-3, 3 //判断是否满足条件 ......
子集 随想录 训练营 随想 算法

Day01

Markdown学习 标题 对应于Ctrl+1234,或者对应数量的#+" "+标题名 字体 哈哈 哈哈 哈哈 用对应数量的* Ctrl+u=下划线 +b=粗体 +i=斜体 哈哈 ~~表示划线 引用 不乱于心,不困于情。不畏将来,不念过往。如此,安好。 用>+" "+话语 分割线 用三个- 或者三个 ......
Day 01

【LeetCode】矩阵中的和

``` 给你一个下标从 0 开始的二维整数数组 nums 。一开始你的分数为 0 。你需要执行以下操作直到矩阵变为空: 矩阵中每一行选取最大的一个数,并删除它。如果一行中有多个最大的数,选择任意一个并删除。 在步骤 1 删除的所有数字中找到最大的一个数字,将它添加到你的 分数 中。 请你返回最后的 ......
矩阵 LeetCode

Id 生成 - 雪花算法

package com.changgou.entity.utils; import java.lang.management.ManagementFactory; import java.net.InetAddress; import java.net.NetworkInterface; /** * ......
算法 雪花 Id

代码随想录算法训练营第51天 | ● 309.最佳买卖股票时机含冷冻期 ● 714.买卖股票的最佳时机含手续费 ●总结 - 第9章 动态规划part12

第九章 动态规划part12 ● 309.最佳买卖股票时机含冷冻期 ● 714.买卖股票的最佳时机含手续费 ● 总结 309.最佳买卖股票时机含冷冻期 本题加了一个冷冻期,状态就多了,有点难度,大家要把各个状态分清,思路才能清晰 视频讲解: https://programmercarl.com/03 ......
时机 随想录 股票 训练营 手续费

代码随想录算法训练营第55天 | ● 392.判断子序列 ● 115.不同的子序列 - 第9章 动态规划part15

第九章 动态规划part15 ● 392.判断子序列 ● 115.不同的子序列 详细布置 392.判断子序列 这道题目算是 编辑距离问题 的入门题目(毕竟这里只是涉及到减法),慢慢的,后面就要来解决真正的 编辑距离问题了 https://programmercarl.com/0392.%E5%88% ......
序列 随想录 训练营 随想 算法