E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
基础算法模板题
【
基础算法
】解决经典兔子问题的两种思路
有一个经典的算法问题,题目是这样的:有一对小兔子,当小兔子成长到第三个月的时候,每个月都会生一对小兔子,新生的小兔子同他们的父母具有一样的生殖性质(成长到第三个月之后每个月都生一对),兔子不会死亡,求n个月后有多少对兔子。这个问题很容易,有很多种方法可以解决,比较经典的方法有两种,递归和动态规划。动态规划动态规划的思路是从最终态(第n月兔子的数量)开始思考,尝试找到第n个月兔子数量,和第n-1个月
野生测试菌
·
2023-10-23 05:46
最长上升子序列
本文将会用几道
模板题
来试着说明最长上升子序列该如何操作。
Xuhx&
·
2023-10-22 23:32
笔记
力扣刷题笔记
个人认为首先需要掌握数据结构、
基础算法
,然后再去练习。掌握思路,再写代码。笔者其他文章有数据结构及算法。
哼唧蛋蛋
·
2023-10-22 22:32
算法
数据结构
java
1024程序员节
Minimum Window Substring【滑动窗口
模板题
】⭐⭐⭐⭐⭐
文章目录题目描述知识点结果实现码前思考~~代码实现~~代码实现码后反思二刷代码题目描述知识点滑动窗口结果实现码前思考这道题目是我学习“滑动窗口”的例题,所以我没有对这道题目进行过独立的思考,是按照别人的思路写的;代码实现//滑动窗口问题//使用双指针进行解题classSolution{public:stringminWindow(strings,stringt){//定义双指针,初始化都为最左边i
yc_cy1999
·
2023-10-22 16:43
#
双指针
字符串
双指针
滑动窗口
数据结构
算法
Longest Substring Without Repeating Characters【滑动窗口
模板题
+序列DP思想】⭐⭐⭐
文章目录题目描述知识点结果实现码前思考代码实现码后反思题目描述知识点两种解法:动态规划滑动窗口结果实现码前思考题中提到了“最长”二字,然后又是“字符串”问题,让我很容易地就去想到了动态规划求解;既然想从动态规划入手,那么就得想想怎么定义dp数组?因为做了很多这种动态规划的题目,我下意识地想到的就是最长无重复子串一定是以某个字符结尾的,那么我就直接定义dp数组的含义为以s[i]结尾的最长无重复子串的
yc_cy1999
·
2023-10-22 16:13
#
双指针
#
动态规划
动态规划
字符串
算法
leetcode
acwing算法基础课笔记汇总
笔记目录简介
基础算法
数据结构搜索与图论数学知识动态规划贪心简介将自己在算法基础课上的笔记汇总,方便以后查看。
数学系的学渣
·
2023-10-22 14:35
acwing算法基础课笔记
算法
c++
基础算法
相关笔记
排序最好情况下:冒泡排序最坏时间复杂度O(n2)O(n^2)O(n2)。插入排序最坏时间复杂度为O(n2)O(n^2)O(n2),最优时间复杂度为O(n)O(n)O(n)。平均情况下:快速排序最坏时间复杂度为O(n2)O(n^2)O(n2),最好时间复杂度为O(nlogn)O(n\logn)O(nlogn)。最坏情况下:归并排序时间复杂度稳定为O(nlogn)O(n\logn)O(nlogn)
拧错位置的螺丝钉
·
2023-10-22 14:25
#
基础算法
算法
笔记
2023华为OD统一考试(B卷)题库清单(持续收录中)以及考点说明
一、逻辑分析二、数据结构1、线性表①数组②双指针2、map与list3、队列4、滑动窗口5、二叉树6、并查集7、栈三、算法1、
基础算法
①贪心算法②二分查找③分治递归④搜索算法⑤排序算法2、字符串①KMP②
哪 吒
·
2023-10-22 14:46
搬砖工逆袭Java架构师
华为od
程序人生
学习
随机森林
后端
排序数组【
模板题
】
912.排序数组【快排】classSolution{//快速排序7:3213voidquickSort(int[]nums,intl,intr){if(l>=r)return;inti=l,j=r,pivot=nums[l+r>>>1];while(ipivot)j--;while(nums[i]=r)return;inti=l,j=r,pivot=arr[l];while(ipivot)j--;
Sasakihaise_
·
2023-10-22 11:56
LeetCode
信息学奥赛一本通题解目录(没写完)
一、语言及算法基础篇基础(一)c++语言第一章:c++语言入门信息学奥赛一本通1000:入门测试题目:点我第二章:顺序结构程序设计第三章:程序的控制结构基础(二)
基础算法
第二章:数据排序信息学奥赛一本通
ptyz306
·
2023-10-22 09:12
c++
数据结构
算法
算法知识目
flag:100天把这些模板全部理解背会写熟,部分练到的题写10遍以上把活动里的题全部干掉,老子要成为一名技术
基础算法
——代码模板链接常用代码模板1——
基础算法
排序二分高精度前缀和与差分双指针算法位运算离散化区间合并数据结构
mrgaohaihang
·
2023-10-22 09:09
LeetCode刷题小结---数组篇
目录前言一、数组1.Java复习笔记Arrays.sort()方法自定义排序:Queue与DequePriorityQueue2.Java题解0.单调队列(必会
模板题
!)
TheBug114514
·
2023-10-22 00:39
秋招日寄
leetcode
动态规划
java
堆 +
模板题
---数组模拟堆
题目描述维护一个集合,初始时集合为空,支持如下几种操作:“Ix”,插入一个数x;“PM”,输出当前集合中的最小值;“DM”,删除当前集合中的最小值(数据保证此时的最小值唯一);“Dk”,删除第k个插入的数;“Ckx”,修改第k个插入的数,将其变为x;现在要进行N次操作,对于所有第2个操作,输出当前集合的最小值。输入格式第一行包含整数N。接下来N行,每行包含一个操作指令,操作指令为”Ix”,”PM”
哆啦c梦~~
·
2023-10-22 00:00
#
堆
数据结构
算法
c++
Acwing
基础算法
1.2
目录内容高精度加法减法乘法除法前缀和,差分前缀和差分内容1.高精度(加减乘除)原因:计算越界情况解决方案:模拟手工加减乘除2.前缀和(数列an前n项和sn)3.差分(数列an)#include内置函数reverse(a.begin(),a.end())容器顺序逆置高精度加法注意点:1.加法顺序2.比较长度3.剩余t的处理#include#includeusingnamespacestd;vecto
Osatnb.c
·
2023-10-21 19:04
AcWing算法学习
算法
c++
开发语言
Acwing
基础算法
1.1
目录第一章排序快速排序快速排序题目归并排序**二分**整数二分浮点数二分第一章1.排序快速:任意一个分节点:左边数字都比它小,右边都比它大,递归处理归并:类似于二叉树,先递归,分到最小,然后从最小开始,排序,归并,成为大数组2.二分(整数,浮点)排序快速排序边界问题:取数:最左边最后递归时候不能(l,i-1)(i,r)右边(l,j)(j+1,r)特例:12模板:很好的推导运用了递归,双指针,二分的
Osatnb.c
·
2023-10-21 19:34
AcWing算法学习
算法
数据结构
自媒体今日头条收益,怎么算?推荐、流量、热门不一定高收益
推荐方式:1、计算机主动推荐
基础算法
。
海西派
·
2023-10-21 03:36
BBKNN:python单细胞样本整合和批次效应处理算法
2020.09.09本教程介绍了Scanpy包自带的用于整合样本,并处理批次效应的BBKNN算法和用于对比的ingest
基础算法
。
切瓜少年
·
2023-10-21 01:02
深度学习
基础算法
算法1.K近邻算法机器学习--K-近邻算法(KNN)_k近邻-CSDN博客2.数据库样本:CIFAR-10CIFAR-10数据集(介绍、下载读取、可视化显示、另存为图片)_cifar10数据集-CSDN博客
Python9724
·
2023-10-21 00:40
模型训练
深度学习
算法
人工智能
【
基础算法
】单链表的OJ练习(4) # 分割链表 # 回文链表 #
个人主页:简料所属专栏:C++个人社区:越努力越幸运社区简介:简料简料,简单有料~在校大学生一枚,专注C/C++/GO的干货分享,立志成为您的好帮手~C/C++学习路线(点击解锁)❤️C语言阶段(已结束)❤️数据结构与算法(ing)❤️C++(ing)❤️Linux系统与网络(队列中…)文章目录前言分割链表回文链表写在最后前言本章的OJ练习相对前面的难度加大了,但是换汤不换药,还是围绕单链表的性
简 料
·
2023-10-20 18:13
数据结构与算法
链表
算法
数据结构
kuangbin 线段树 - HDU - 1754 I Hate It (线段树单点修改
模板题
)
kuangbin线段树-HDU-1754IHateIt(线段树单点修改
模板题
)总题单week3[kuangbin带你飞]题单最小生成树+线段树Clickhere~~https://blog.csdn.net
会划水才能到达彼岸
·
2023-10-20 17:34
线段树专题
kuangbin
题单
算法
数据结构
c++
二叉树
图论
LeetCode
基础算法
50题Day02
目录1、计算力扣银行的钱2、排序数组(1)、冒泡排序(2)、选择排序(3)、插入排序(4)、快速排序1、计算力扣银行的钱Hercy想要为购买第一辆车存钱。他每天都往力扣银行里存钱。最开始,他在周一的时候存入1块钱。从周二到周日,他每天都比前一天多存入1块钱。在接下来每一个周一,他都会比前一个周一多存入1块钱。给你n,请你返回在第n天结束的时候他在力扣银行总共存了多少块钱。思路:根据以下我自己的分析
SmallReda
·
2023-10-20 15:04
零基础算法50题
java
算法
leetcode
LeetCode刷题顺序(新手入门)
本刷题策略为leetcode官方的新手村策略,跟着主页官方的新手村策略刷题,按照每天刷三简单题或两中等题或一难题的速度刷题,每天预计花费1.5h下面的顺序是探索卡中的顺序数组分为三部分1.做好初始定义2.运用
基础算法
思想
falldeep
·
2023-10-19 11:11
leetcode
leetcode
算法
职场和发展
c++
数据结构
常见
基础算法
image.png顺序查找顺序查找又称线性查找。它的过程为:从查找表的最后一个元素开始逐个与给定关键字比较,若某个记录的关键字和给定值比较相等,则查找成功,否则,若直至第一个记录,其关键字和给定值比较都不等,则表明表中没有所查记录查找不成功,它的缺点是效率低下。二分查找二分查找又称折半查找,对于有序表来说,它的优点是比较次数少,查找速度快,平均性能好。二分查找的基本思想是将n个元素分成大致相等的两
緋想天長女
·
2023-10-18 20:51
通用
基础算法
(1.4分治算法/1.5贪心算法/1.6回溯算法)
4.分治算法分治算法的主要思想就是将原问题分解为多个相同结构的子问题,通过分别解决子问题的方式,最终解决原问题。分治算法主要解决可以进行线性模块划分的问题,主要步骤就是三个:分解原问题,解决子问题,合并子问题的解。下面以最大最小值问题和二分查找问题为例简单介绍。最大最小值问题:已知数列{a(n)},求解其最大值和最小值。以下是最大最小值问题的C语言程序。#include#include#inclu
Abona
·
2023-10-18 18:58
#
基础算法导论
分治算法
贪心算法
【强基】容斥原理
Part1:知识点Part2:例题【
模板题
】区间整除数题意给出一个数组a[1..n]a[1..n]a[1..n],问在区间[L,R][L,R][L,R]中有多少个数,至少能被a中的一个数整除。
xishanmeigao
·
2023-10-18 14:48
学习总结
强基计划
c++
容斥原理
LeetCode 1 两数之和
两数之和
基础算法
classSolution:deftwoSum(self,nums:List[int],target:int)->List[int]:#获取数组长度n=le
ShuaS2020
·
2023-10-18 05:51
保研
leetcode
算法
职场和发展
Python
基础算法
——多数元素
14.多数元素给定一个大小为n的数组nums,返回其中的多数元素。多数元素是指在数组中出现次数大于⌊n/2⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例:输入:nums=[3,2,3]输出:3常用的算法分别是:函数法Counter、简单数学思维法、投票法、字典法和排序法。函数法Counter:使用Counter函数计算多数元素的代码思路是:使用Counter统计数组nums
三炭先生
·
2023-10-18 03:47
数据结构
python
算法
基础算法
:二进制中1的个数—位运算
位运算C++模板:求n的第k位数字:n>>k&1返回n的最后一位1:lowbit(n)=n&-n位运算理解:n>>k:代表n右移k位比如000011>>1=000001前面会补零(所以第几位是从0开始计算)n&1:表示最后一位是否为1比如:n=3=0011而1是0001则3&1=0011&0001为0001可以用来判断最后一位是否为1lowbit(x):返回最后一位1(x&-x)-x=~x+1下面
奋斗吧!骚年!
·
2023-10-17 22:40
#
基础算法
算法
c++
位运算
支持区间修改和区间查询的线段树
一道支持区间修改和区间查询的线段树的
模板题
:LuoguP3372【模板】线段树1。
学无止境1980
·
2023-10-17 05:07
搜索算法——回溯总结01
回溯相关的题型2.理论基础(1)什么是回溯法(2)回溯法的效率(3)如何理解回溯法(4)回溯三部曲回溯函数模板返回值以及参数回溯函数终止条件回溯搜索的遍历过程模板框架(伪代码)3.组合问题(1)组合的经典
模板题
chy响当当
·
2023-10-16 18:29
算法学习
算法
数据结构
【C++】字典树(trie树)
题目大意思路代码例5最长公共前缀问题(
模板题
)题目描述输入描述输出描述样例输入样例输出思路其他练习引入当我
Ljnoit
·
2023-10-16 15:40
【特别专栏】那些年
我们一起追过的算法
#
C++
Code
字符串
数据结构
算法
C++
树
Leetcode17电话号码的字母组合(dfs)
前面见过DFS了,现在来刷一道dfs的
模板题
来体会一下dfs吧DFS(深度优先搜索)leetcode——46全排列_Soraku7的博客-CSDN博客17.电话号码的字母组合难度中等1899收藏分享切换为英文接收动态反馈给定一个仅包含数字
Soraku7
·
2023-10-16 13:15
刷题集
刷题学习
深度优先
leetcode
算法
英雄哥《零
基础算法
》13/100之 “最大公约数”
文章目录一、设问二、题目找出数组的最大公约数序列中不同最大公约数的数目三、题解报告找出数组的最大公约数序列中不同最大公约数的数目四、知识点笔记《算法零基础100讲》介绍参考资料本学习笔记是根据《算法零基础100讲》进行的每讲总结,目标是采用刻意练习的方法对个人的学习和思考进行总结和归纳,方便复习和进一步深入理解和掌握内化。每一讲的笔记内容大致分为:设问,通过这一讲的学习应该理解什么内容?题目,在学
Amy卜bo皮
·
2023-10-16 12:50
万人千题学习报告
#
算法
LeetCode 15. 3Sum【左右指针
模板题
】⭐⭐⭐⭐⭐
文章目录题目描述知识点结果实现码前思考代码实现码后反思参考思路二刷代码题目描述知识点排序+双指针结果实现码前思考这道题我没有做出来。。。暴力思考:求a+b+c=0,最直观的方法就是枚举a,b,c,也就是组合数Cn3C_n^3Cn3,这样的会使时间复杂度达到O(n3)O(n^3)O(n3),显然不可取;既然不能暴力,那么我们需要将原问题再次进行剖析,要另辟蹊径(转换问题,等价问题是解决暴力的首选思想
yc_cy1999
·
2023-10-16 09:40
#
双指针
leetcode
数据结构
算法
双指针
超
基础算法
:二分查找法
简介二分法是五大
基础算法
中分治算法的一种,按照分治算法分而治之的思想,二分法的思路很简单,即:将区间从中分为两部分,判断查找元素属于哪一部分。更新区间,重复第一步。直到将区间缩小到只有一个元素为止。
没有文化,啥也不会
·
2023-10-16 06:19
基础算法
单调栈模板&数组模拟优化
链接:
模板题
链接.STL做法,简单易懂,但是太慢了,后面有优化#includeusingnamespacestd;constintN=3e6+10;intn,a[N],b[N];stackst;signedmain
lazy_yun
·
2023-10-16 06:47
#
数据结构
c++
单源最短路 dijkstra算法模板
链接:
模板题
不能处理带负边权的情况/*邻接矩阵存图1、从源点开始每次选取一个离点集距离最近的点t添加到集合中2、利用t点对集合中的点进行松弛操作,进行更新时间复杂度o(n²)*/#include#definegocontinue
lazy_yun
·
2023-10-16 06:47
算法
图论
算法
基础算法
二分算法
目录二分算法一、整数二分二、浮点二分三、STL二分函数四、二分答案二分算法1.二分概念二分算法,又称折半查找,即在一个单调有序的集合中查找一个解。每次分为左右两部分,判断解在哪个部分中并调整上下界,直到找到目标元素,每次二分后都将舍弃一半的查找空间。2.算法复杂度:O(logn)3.二分法常见模型(1)二分查找在一个单调有序的区间上求解分界点。(2)二分答案最小值最大(最大值最小)问题,这类双最值
溺水少年
·
2023-10-16 06:14
算法
算法
c++
二分法
树形dp求树的直径
目录引言【
模板题
】树的直径树形dp解法本题完整C++代码leetcode变形题一分析C++代码leetcode变形题二(更简单)分析C++代码所有文字著作权归本人所有,禁止转载抄袭!
准图灵奖得主
·
2023-10-16 06:34
算法刷题
树的直径
树形dp
算法
树的直径&
CowMarathon
模板题
,让你求距离最远的两个节点的距离,那么就是树的直径。
lazy_yun
·
2023-10-16 06:33
#
数据结构
深度优先
算法
图论
基础算法
:二分查找
目录1.二分查找2.补充:二进制运算2.1十进制与二进制的相互转换2.1.1十进制转二进制2.1.2二进制转十进制2.2机器数真值2.3原码补码反码2.4二进制的加减乘除2.5移位运算1.二分查找思想:有序数组,从中找值实现:while循环:时间复杂度:log(n)publicstaticintbinarySearch01(int[]arr,inttarget){inti=0;intj=arr.l
364.99°
·
2023-10-16 06:32
算法
Java
算法
二进制
【王道考研 数据结构 】
基础算法
代码复习总结 C语言(树和图)
文章目录一、树和二叉树树的遍历线索二叉树遍历二、图BFSDFS最小生成树Prim算法Kruskal算法Dijkstra算法(求单源最短路径问题)算法原理邻接矩阵实现邻接表实现Floyd算法(求多源最短路径问题)算法思想算法原理邻接矩阵实现拓扑排序原理栈实现拓扑排序(邻接表实现)一、树和二叉树树的遍历#include#includetypedefstructBiTNode{ElemTypedata;
Y1seco
·
2023-10-16 05:21
专业基础课
数据结构
算法
c语言
C语言
基础算法
复习
003斐波那契数列问题#includeintmain(){inti,f1=1,f2=1,f3,num;printf("%5d%5d",f1,f2);num=2;for(i=1;iintmain(){inti,f1=1,f2=1;for(i=1;iintmain(){intsum=1;for(inti=1;iintmain(){intn,i;longfac=1;scanf("%d",&n);for(
半岛铁盒★
·
2023-10-16 05:47
算法
c语言
开发语言
Acwing - 算法基础课 - 笔记(动态规划 · 二)
一般是状态的数量乘以状态转移的计算量DP问题,是
基础算法
中比较难的部分,因为它不像其他算法,有个代码模板可以用于记忆。
抠脚的大灰狼
·
2023-10-16 04:29
算法
Acwing算法基础课
算法
动态规划
acwing算法基础课-第五章 动态规划
动态规划动态规划背包问题AcWing2.01背包问题(0-1背包问题
模板题
)思想解法代码AcWing3.完全背包问题(完全背包问题
模板题
)思想解法代码AcWing4.多重背包问题I(多重背包朴素法
模板题
偶然路过的帅小伙z
·
2023-10-16 04:28
#
算法
-
acwing算法基础课
算法
动态规划
洛谷P1601 题解
传送门这道题其实就是
模板题
,套高精度模板就好了代码:#includeusingnamespacestd;intmain(){chara1[1000],b1[1000];//因为输的数大,所以用charinta
白狼王4
·
2023-10-15 13:11
c++
算法
【算法基础】
基础算法
(三)--(双指针算法、位运算、离散化、区间合并)
一、双指针算法双指针算法是一种通过设置两个指针不断进行单向移动来解决问题的算法。1、双指针算法模板记忆!for(inti=0,j=0;i>k&1返回n的最后一位1:lowbit(n)=n&-n2、思路(1)求n的第k位数字先把第k位移到最后一位:n>>k看个位是几:x&1【总结】n>>k&1(2)返回n的最后一位1n=1010;lowbit(n)=10;n=101000;lowbit(n)=100
炫酷的伊莉娜
·
2023-10-15 11:19
算法
算法
c++
开发语言
双指针算法
位运算
离散化
区间合并
洛谷P1443 马的遍历(bfs)
题目链接很适合做bfs
模板题
的一道题,用stl中的队列和pair解决.要是不看题解我就写成深搜了#includeusingnamespacestd;constintN=505;queue>q;//队列,
AnzioNiko
·
2023-10-15 05:22
题目
c++
算法
贪心算法
acwing算法基础之
基础算法
--整数离散化算法
目录1知识点2模板1知识点整个范围很大,但存在的数据点很少。比如从−109-10^9−109到10910^9109,但总共只有10610^6106个数。可以采用离散化的思想来做,即将离散的大数值映射成连续的小数值(一般是1,2,3,⋯ ,n1,2,3,\cdots,n1,2,3,⋯,n)。看到这里,你是不是觉得小数值与向量下标比较相似,是的,它本质就是下标,从1开始编号还是从0开始编号,取决于业务
YMWM_
·
2023-10-14 12:15
Acwing
算法
acwing算法基础之
基础算法
--位运算算法
目录1知识点2模板1知识点(一)n的二进制表示中第k位是0还是1,注意k从0开始编号。先把第k位移动到最后一位,即n>>k看个位是几,即x&1综合上述,即n>>k&1。(二)lowbit(x)操作,返回x的最后一位1是多少。比如x=(101000)2,则lowbit(x)=(1000)2x=(101000)_2,则lowbit(x)=(1000)_2x=(101000)2,则lowbit(x)=(
YMWM_
·
2023-10-14 12:45
Acwing
算法
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他