算法leetcode day 30
贪心算法--拼接最大数字问题
> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230819103408921-1043621003.png) * ![](https:/ ......
【LeetCode1454. 活跃用户】MySQL 用户自定义变量,面向过程编程解决"连续天数"的问题
[TOC] # 题目地址 https://leetcode.cn/problems/active-users/description/ # 题目描述 活跃用户 是指那些至少连续 5 天登录账户的用户。 编写解决方案, 找到 活跃用户 的 id 和 name。 返回的结果表按照 id 排序 。 # 代 ......
leetcode刷题日记
unordered_set散列哈希表:[C++ STL unordered_set容器完全攻略 (biancheng.net)](http://c.biancheng.net/view/7250.html) unordered_map:[详细介绍C++STL:unordered_map - 朤尧 - ......
基于形态学处理的条形码数字分割和识别算法MATLAB仿真
1.算法理论概述 条形码数字的分割和识别是自动识别技术中的重要研究方向之一。本文将从专业角度详细介绍基于形态学处理的条形码数字分割和识别算法,包括实现步骤和数学公式的详细介绍。 一、算法概述 基于形态学处理的条形码数字分割和识别算法包括以下步骤: 图像预处理:对原始图像进行预处理,包括调整亮度和对比 ......
Leetcode 160. 链表相交(Intersection of two linked lists lcci)
[题目链接](https://leetcode.cn/problems/intersection-of-two-linked-lists-lcci/description) 给定两个单链表的头节点headA和headB, 请找出并返回两个单链表相交的起始节点. 如果两个链表没有交点, 返回null. ......
贪心算法--背包问题--分数背包
> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230818215830809-449168614.png) * ![](https:// ......
8.18Day2
0+60+60+95=215 # T1 期望还是太差了,说是找规律,看了2个小时都没有找出规律,因为多测,40暴力分暴力还挂了 按每个位置考虑,因为期望的线性性,考虑最终是不是在原位上即可,只有01所以是伯努利分布,E=np,递推或者找通项都ok # T2 原题,吐槽一下大样例,完全没有强度,过了只 ......
代码随想录算法训练营第六天|242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
哈希表部分: 哈希表,简单来说就是k-v形式查询的结构,用来快速判断一个元素是否出现集合里,如hashmap 核心是哈希函数,k存哈希函数的值,找的时候找查询项的哈希函数值就行,返回v 出现哈希碰撞的时候,查找的流程怎么走呢?(*存疑,之后查一下) 类型:数组+集合set(set、multiset、 ......
代码随想里算法训练营第四天|
24. 两两交换链表中的节点 题目 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 第一想法 第一次做这个题的时候其实没搞懂怎么两两交换,原来是12、34、56这样... 应该是反转链表的变体,先判断头节点的nex ......
代码随想录算法训练营第三天| 203.移除链表元素 ,707.设计链表 ,206.反转链表
203.移除链表元素 题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 第一想法 定义一个指针a指向头节点,顺序遍历链表,循环结束的条件是指针a.next为null 删除操作是判断a.next.val= ......
贪心算法--找零问题
> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230818211054542-2028904322.png) * ![](https:/ ......
[代码随想录]Day21-回溯算法part01
## 题目:[77. 组合](https://leetcode.cn/problems/combinations/) ### 思路: 回溯就是dfs的一个特殊情况也就是递归的一种情况,值得注意的一点: 要记得深拷贝,不然最后全是空 ### 代码: ```go var res [][]int var ......
20天 hot 100 速通计划-day12
### 回溯 #### [78. 子集](https://leetcode.cn/problems/subsets/) 给你一个整数数组 `nums` ,数组中的元素 **互不相同** 。返回该数组所有可能的子集(幂集)。 解集 **不能** 包含重复的子集。你可以按 **任意顺序** 返回解集。 ......
JavaScript中常见的数据结构和算法及其应用场景简介
在JavaScript编程中,数据结构和算法是必不可少的组成部分。本文将介绍JavaScript中常见的数据结构和算法以及它们的应用场景。 ......
C-排序算法
稳定性:在待排序的数据中,对于数值相同的数据,在整个排序过程中如果不会改变他们原来的先后顺序,则认为该排序算法是稳定的。 内排序:所有排序操作都在内存中完成。 外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行。 比较排序:在排序的最终结果里,元素之间的次序依赖于他们 ......
Learn Git in 30 days——第 04 天:常用的 Git 版本控制指令
写的非常好的一个Git系列文章,强烈推荐 原文链接:https://github.com/doggy8088/Learn-Git-in-30-days/tree/master/zh-cn 本篇文章将带大家学会几个最重要也最基本的版控工作,其中将包含基本的文件操作如新增、删除、重新命名文件,提交变更 ......
Leetcode 1388. 3n 块披萨
(本文只提供了解题思路的思考,[原文作者题解连接](https://leetcode.cn/problems/pizza-with-3n-slices/solutions/527304/dpjie-fa-yu-da-jia-jie-she-2-de-chai-bie-ihso/)) 先把题目粘贴在这 ......
leetcode1372dp求交错路径长
bfd+dp unordered_map<TreeNode* ,int>d,p; queue<pair<TreeNode* ,TreeNode*>>q; int dp(TreeNode* root){ d[root]=p[root]=0; q.push({root,nullptr}); while( ......
2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是
2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是 非空 字符串, 所有子字符串的连接等于 text , ( 即subtext1 + subtext2 ......
算法学习笔记
[来源](https://harryqu1229.github.io/2022/06/12/%E7%AE%97%E6%B3%95%E7%BB%88%E6%9E%81%E6%8C%87%E5%8D%97/#%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F) ### 排序算法 # ......
P1923 【深基9.例4】求第 k 小的数(快速选择算法)
题解: 利用快速排序的思想来寻找第k小的数,可以避免很多不必要的操作 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int N = 5000005, M = 5e6 + 5; 4 int x[N], k; 5 inline int ......
day10 - 栈与队列part01
232. 用栈实现队列 详解 class MyQueue { public: stack<int> st_in; stack<int> st_out; MyQueue() { } void push(int x) { st_in.push(x); } int pop() { if(st_out.em ......
DAY 04 ~JAVA 基礎語法 Part 2(類型轉換/變量與常量/運算符/包機制/JAVADOC)
# JAVA 基礎語法 Part 2 ## 類型轉換 - 由於JAVA士強類型語言,所以要進行運算的時候,需要用到類型轉換 ```java 低 >高 byte,short,char-> int-> long-> float-> double ``` - 運算中,不同類型的數據先轉化為同一類型,然後進 ......
TFIDF改进版:BM25算法介绍及Lucene的实现
# 优化TF ## TF衰减 > 思考一个问题:一篇文档,里面有提到200次RedCap,一定是2倍相关于另一篇提到100次RedCap吗? $TF$对匹配度的贡献应该是有所衰减的。如何控制衰减曲线的陡峭程度?构造$TF$衰减的匹配度函数的一个trick是引入参数$k$: $$ {TF}^\prim ......
济南 CSP-J 刷题营 Day3 动态规划
# Solution ## T1 方格涂色 ### 原题链接 [**4085: 方格涂色**](https://noip.ac/rs/show_problem/4085 "**4085: 方格涂色**") ### 简要思路 分列进行讨论,只有三种状态:选了上面、选了下面、上下都没选。只需讨论一下状态 ......
常用算法
算法主要是由头文件 <algorithm> <functional> <numeric> 组成。 <algorithm> 是所有 STL 头文件中最大的一个,范围涉及到比较、交换、查找、遍历操作、复制、修改等等 <nuneric> 体积很小,只包括几个在序列上面进行简单数学运算的模板函数 <func ......
C++快速入门 第四十七讲:容器和算法
C++标准库提供的向量(vector)类型从根本上解决了数组先天不足的问题(内存固定,如果不用那么多内存编译器也会为其分配) 我们用不着对一个向量能容纳多少元素做出限定,因为向量可以动态地随着你往它里面添加元素而无限增大。还可以用它的size()方法查知某给定向量的当前长度(即包含的元素个数);用p ......
[LeetCode][70]climbing-stairs
# Content You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can ......
[LeetCode][53]maximum-subarray
# Content Given an integer array nums, find the subarray with the largest sum, and return its sum. Example 1: Input: nums = [-2,1,-3,4,-1,2,1,-5,4] Ou ......