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
ACWing算法练习
Acwing
---829. 模拟队列
模拟队列1.题目2.基本思想3.代码实现1.题目实现一个队列,队列初始为空,支持四种操作:pushx–向队尾插入一个数x;pop–从队头弹出一个数;empty–判断队列是否为空;query–查询队头元素。现在要对队列进行MMM个操作,其中的每个操作333和操作444都要输出相应的结果。输入格式第一行包含整数MMM,表示操作次数。接下来MMM行,每行包含一个操作命令,操作命令为pushx,pop,e
amant 柒少
·
2024-02-10 05:44
#
Acwing
刷题
java
数据结构
算法
Acwing
--845. 八数码(BFS)
在一个3×3的网格中,1∼8这8个数字和一个x恰好不重不漏地分布在这3×3的网格中。例如:123x46758在游戏过程中,可以把x与其上、下、左、右四个方向之一的数字交换(如果存在)。我们的目的是通过交换,使得网格变为如下排列(称为正确排列):12345678x例如,示例中图形就可以通过让x先后与右、下、右三个方向的数字交换成功得到正确排列。交换过程如下:123123123123x464x6456
wowon~
·
2024-02-10 01:28
搜索技术
算法
c++
BFS
算法练习
-二叉搜索树中的搜索(思路+流程图+代码)
难度参考难度:中等分类:二叉树难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记,旨在督促自己认真学习。题目给定二叉搜索树(BST)的根节点和一个值。你需要在BST中找到节点值等于给定值的节点。返回以该节点为根的子树。如果节点不存在,则返回NULL.示例1:输入:root=[4,2,7,1,3],v
Yamai Yuzuru
·
2024-02-10 00:06
算法编程笔记
流程图
【Py/Java/C++三种语言详解】LeetCode每日一题240206【反悔性贪心+堆】LCP30、魔塔游戏
948025485可上全网独家的欧弟OJ系统练习华子OD、大厂真题绿色聊天软件戳od1336了解算法冲刺训练文章目录题目链接题目描述解题思路代码PythonJavaC++时空复杂度华为OD算法/大厂面试高频题
算法练习
冲刺训练题目链接
闭着眼睛学算法
·
2024-02-09 23:07
最新华为OD真题
#
优先队列
#
贪心
java
c++
leetcode
python
优先队列
AcWing
1224 交换瓶子(简单图论)
[题目概述]有N个瓶子,编号1∼N,放在架子上。比如有5个瓶子:21354要求每次拿起2个瓶子,交换它们的位置。经过若干次后,使得瓶子的序号为:12345对于这么简单的情况,显然,至少需要交换2次就可以复位。如果瓶子更多呢?你可以通过编程来解决。输入格式第一行包含一个整数N,表示瓶子数量。第二行包含N个整数,表示瓶子目前的排列状况。输出格式输出一个正整数,表示至少交换多少次,才能完成排序。数据范围
techpupil
·
2024-02-09 22:05
图论
算法
数据结构
【Py/Java/C++三种语言OD2023C卷真题】20天拿下华为OD笔试之【贪心】2023C-分割均衡字符串【欧弟算法】全网注释最详细分类最全的华为OD真题题解
文章目录题目描述与示例题目描述输入描述输出描述补充说明示例输入输出解题思路代码PythonJavaC++时空复杂度华为OD算法/大厂面试高频题
算法练习
冲刺训练题目描述与示例题目描述均衡串定义:字符串只包含两种字符
闭着眼睛学算法
·
2024-02-09 21:14
最新华为OD真题
#
贪心
算法
java
c++
python
华为od
leetcode
AcWing
5147. 数量 题解
题目描述:请你统计,1~n的范围内一共有多少个正整数满足其十进制表示不含4和7以外的数字。样例:输入数据:4输出数据:1思路讲解:暴力dfs即可,存一个当前遍历到的变量,如果大于n就return,否则继续搜索。对于下一步只有两种可能,一种是在末尾添加一个4,另一种则是在末尾添加一个7。C++代码:#includeusingnamespacestd;longlongn;inttot=0;voiddf
gu_zhou_suo_li_weng
·
2024-02-09 16:38
深度优先
DFS——C++
具体算法讲解可以参考https://blog.csdn.net/qq_63055790/article/details/133961017例题:https://www.
acwing
.com/activity
松定
·
2024-02-09 13:28
深度优先
c++
算法
【
算法练习
】leetcode算法题合集之其他篇
贪心算法LeetCode376.摆动序列LeetCode376.摆动序列最后是向上幅度的摆动序列定义为up,最后是向下幅度的摆动序列定义为down。如果数值相等,那么摆动序列的长度是不变的。classSolution{publicintwiggleMaxLength(int[]nums){intn=nums.length;if(nnums[i-1]){up[i]=down[i-1]+1;down[
秋装什么
·
2024-02-09 10:35
算法
算法
leetcode
职场和发展
C++算法之树状数组与线段树
AcWing
1264.动态求连续区间和详细题解
AcWing
,题解,动态求连续区间和,https://www.
acwing
.com/solution/content/7526/一、树状数组1.
AcWing
1264
算法下的星辰曲
·
2024-02-09 09:02
蓝桥杯
c++
开发语言
C++算法之数学与简单DP
1.
AcWing
2.01背包问题分析思路代码实现#includeusingnamespacestd;constintN=1010;intdp[N][N];intv[N],w[N];intn,m;intmain
算法下的星辰曲
·
2024-02-09 09:31
蓝桥杯
c++
开发语言
C++算法之枚举、模拟与排序
1.
AcWing
1210.连号区间数分析思路由题意是在1∼N的某个排列中有多少个连号区间,所以每个数出现并且不重复!
算法下的星辰曲
·
2024-02-09 09:31
蓝桥杯
算法
c++
C++算法之二分与前缀和(2)
1.
AcWing
795.前缀和分析思路由数列的前n项和可知,s[i]=a[i]+s[i-1],如果我们要计算[l,r]的和,可用公式s[r]-s[l-1]!
算法下的星辰曲
·
2024-02-09 09:01
蓝桥杯
c++
开发语言
AcWing
803. 区间合并
原题链接:
AcWing
803.区间合并https://www.
acwing
.com/problem/content/805/解题思路:①按左端点对区间进行排序。
算法下的星辰曲
·
2024-02-09 09:00
算法基础课
算法
c++
C++算法之递归与递推(2)
二、递推(与递归相反,先求出子问题再去算出原问题)1.
AcWing
717.简单斐波那契分析过程先定义f(1)和f(2)作为边界,然后f(n)=f(n-1)+f(n-2),此题可以直接用滚动数组的雏形来算
算法下的星辰曲
·
2024-02-09 09:30
蓝桥杯
算法
c++
数据结构
C++算法之双指针、BFS和图论
一、双指针1.
AcWing
1238.日志统计分析思路前一区间和后一区间有大部分是存在重复的我们要做的就是利用这部分来缩短我们查询的时间并且在使用双指针时要注意对所有的博客记录按时间从小到大先排好顺序因为在有序的区间内才能使用双指针记录两个区间相差相当于把一个有序的时间序列进行每次递增
算法下的星辰曲
·
2024-02-09 09:28
c++
宽度优先
图论
Java
算法练习
4
Java
算法练习
41.1[145.二叉树的后序遍历](https://leetcode.cn/problems/binary-tree-postorder-traversal/)1.2[173.二叉搜索树迭代器
It_张
·
2024-02-09 08:10
算法练习
Java
java
算法
开发语言
朴素dijkstra算法 :
AcWing
849. Dijkstra求最短路 I
Dijkstra算法分析:(适用于稠密图,边权非负图)Dijkstra算法的流程如下:Dijkstra算法基于贪心思想,它只适用于所有边的长度都是非负数的图。当边长z都是非负数时,全局最小值不可能再被其他节点更新,故在第1步中选出的节点x必然满足:dist[x]已经是起点到x的最短路径。我们不断选择全局最小值进行标记和扩展,最终可得到:起点1到每个节点的最短路径的长度。(求得起点到所有终点的最短路
Brightess
·
2024-02-09 05:58
图论
最短路问题
算法
图论
AcWing
1238 日志统计(双指针算法)
题目概述小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有N行。其中每一行的格式是:tsid表示在ts时刻编号id的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是”热帖”。具体来说,如果存在某个时刻T满足该帖在[T,T+D)[T,T+D)[T,T+D)这段时间内(注意是左闭右开区间)收到不
techpupil
·
2024-02-09 04:04
双指针
算法
AcWing
1101 献给阿尔吉侬的花束(bfs宽搜)
[题目概述]阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达终点,就在终点放了一块阿尔吉侬最喜欢的奶酪。现在研究员们想知道,如果阿尔吉侬足够聪明,它最少需要多少时间就能吃到奶酪。迷宫用一个R×CR×CR×C的字符矩阵来表示。字符S表示阿尔吉侬所在的位置,字符E表示奶酪所在的位置,字符#表示墙壁,字符.表示可以通行。阿尔
techpupil
·
2024-02-09 04:33
宽度优先
算法
2 月 7 日
算法练习
- 数据结构-树状数组
树状数组lowbit在学习树状数组之前,我们需要了解lowbit操作,这是一种位运算操作,用于计算出数字的二进制表达中的最低位的1以及后面所有的0。写法很简单:intlowbit(intx){returnx&-x;}这是利用了计算机存储整数的特性来写的,在计算机中整数都使用补码进行存储,原理不做深究,记住怎么写即可。树状数组基础树状数组是一种可以“动态求区间和”的树形数据结构,但并没有真正地构造出
小蒋的学习笔记
·
2024-02-09 00:39
算法
算法
数据结构
java
2 月 7 日
算法练习
- 数据结构-树状数组上二分
问题引入给出三种操作,0在容器中插入一个数。1在容器中删除一个数。2求出容器中大于a的第k大元素。树状数组的特点就是对点更新,成段求和,而且常数非常小。原始的树状数组只有两种操作,在某点插入一个数和求1到i的所有数的和。这道题目一共有三种操作,但是实质上其实只有两种:插入和询问。插入操作和删除操作可以视为一种,只不过一个是将标记+1,另一个是-1,而插入的数对应于树状数组的下标,这样就可以在log
小蒋的学习笔记
·
2024-02-08 10:38
算法
算法
数据结构
容斥原理级笔记
容斥原理:|s1⋃s2⋃s3……⋃sn|=|s1|+|s2|+……|s3|-|s1⋂s2|-……+|s1⋂s2⋂s3|+……应用一(基础):
AcWing
能被整除的数思路:(1)容斥原理的直接应用。
奔跑的星黛露
·
2024-02-08 09:55
算法
算法
第二讲:数据结构
AcWing
826. 单链表
目录数组模拟链表数组模拟单链表单链表思路&&代码看图更好理解推荐一下y总的刷题网站数组模拟链表笔试的题目大部分大部分涉及到链表都是十万级别的用数组的方式创建链表速度很快,不会超时,而如果用new一个结构体的话大部分就是比较慢的所以不建议使用数组模拟单链表单链表在笔试题中用的最多是领接表领接表最多的应用是存储数和图双链表最多的应用就是来优化某些问题假设当前的节点我们可以用e[N]来表示当前节点的值是
橘子味的茶二
·
2024-02-08 09:23
acwing算法基础
数据结构
第二讲 数据结构
AcWing
827. 双链表
目录双链表代码&&思路双链表实现一个双链表,双链表初始为空,支持5种操作:在最左侧插入一个数;在最右侧插入一个数;将第k个插入的数删除;在第k个插入的数左侧插入一个数;在第k个插入的数右侧插入一个数现在要对该链表进行M次操作,进行完所有操作后,从左到右输出整个链表。注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了n个数,则按照插入的时间顺序,这n个数依次为:第1个插入
橘子味的茶二
·
2024-02-08 09:20
acwing算法基础
数据结构
算法
统计数字出现次数的数位动态规划解法-数位统计DP
原题链接:338.计数问题-
AcWing
题库数位动态规划概述数位DP是一种用于解决与数字的各个数位相关的问
派大星45599
·
2024-02-08 05:01
数据结构与算法分析
动态规划
算法
java
状态压缩DP--最短Hamilton路径问题的状态压缩动态规划解法
题目链接:91.最短Hamilton路径-
AcWing
题库问题描述算法概述状态压缩动态规划可以在处理特定类型的组合问题时非常有用,尤其是当问题涉及到需要考虑集合
派大星45599
·
2024-02-08 05:00
数据结构与算法分析
动态规划
算法
Acwing
778.字符串最大跨越
有三个字符串S,S1,S2,其中,S长度不超过300,S1和S2的长度不超过10。现在,我们想要检测S1和S2是否同时在S中出现,且S1位于S2的左边,并在S中互不交叉(即,S1的在S的左边界点的左侧)。计算满足上述条件的最大跨距(即,最大间隔距离:最右边的S2的起始点与最左边的S1的终止点之间的字符数目)。如果没有满足条件的S1,S2存在,则输出−1。例如,S=abcd123ab888efghi
Mbigmouse
·
2024-02-08 04:40
c++
算法
开发语言
Acwing
777.字符串的乘方
给定两个字符串a和b,我们定义a×b为他们的连接。例如,如果a=abc而b=def,则a×b=abcdef。如果我们将连接考虑成乘法,一个非负整数的乘方将用一种通常的方式定义:a0=``(空字符串),a(n+1)=a×(an)。输入格式输入包含不超过10组测试样例,每组测试样例占一行。每组样例包含一个由小写字母构成的字符串s,s的长度不超过100,且不包含空格。最后的测试样例后面将是一个点号作为一
Mbigmouse
·
2024-02-08 04:40
算法
c++
开发语言
ACWing
776.字符串移位包含问题
对于一个字符串来说,定义一次循环移位操作为:将字符串的第一个字符移动到末尾形成新的字符串。给定两符s和s2,要求判定其中一个字符串是否是另一字符串通过若干次循环移位后的新字符串的子串。例如CDAA是由AABCD两次移位后产生的新串BCDAA的子串,而ABCD与ACBD则不能通过多次移位来得到其中一个字符串是新串的子串。输入格式共一行,包含两个字符串,中间由单个空格隔开。字符串只包含字母和数字,长度
Mbigmouse
·
2024-02-08 04:09
算法
c++
开发语言
数论 之 约数篇
约数1)试除法求约数原题链接:869.试除法求约数-
AcWing
题库思路:与上面的试除法求质数很相似a|b的意思是,b%a=0如果x|n那么一定有(n/x)|n,所以,著需要求一个,另一个直接能得到核心代码
海风许愿
·
2024-02-08 04:21
Acm算法
算法
数据结构
c++
开发语言
树的重心(dfs深度搜索)
树的重心原题链接:846.树的重心-
AcWing
题库邻接表存储树图模板代码voidadd(inta,intb){e[id]=b,ne[id]=h[a],h[a]=id++;}dfs搜索树模板代码voiddfs
海风许愿
·
2024-02-08 04:51
Acm算法
数据结构
c++
深度优先
算法
图论
组合数 与卡特兰数
组合数与卡特兰数1a,b比较小时采用预处理方法,提前将所有的组合数都算出来,到时候直接查表采用的公式是C(a,b)=C(a-1,b)+C(a-1,b-1)原题链接:885.求组合数I-
AcWing
题库核心代码
海风许愿
·
2024-02-08 04:50
Acm算法
c++
算法
数据结构
c++
算法练习
-二叉搜索树的最小绝对差(思路+流程图+代码)
难度参考难度:中等分类:二叉树难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记,旨在督促自己认真学习。题目给你一个二叉搜索树的根节点root,返回树中任意两不同节点值之间的最小差值。差值是一个正数,其数值等于两值之差的绝对值。示例1:输入:root=[4,2,6,1,3]输出:1示例2:输入:ro
Yamai Yuzuru
·
2024-02-08 02:41
算法编程笔记
算法
流程图
算法练习
-删除二叉搜索树中的节点(思路+流程图+代码)
难度参考难度:中等分类:二叉树难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记,旨在督促自己认真学习。题目给定一个二叉搜索树的根节点root和一个值ky,删除二叉搜索树中的key对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。示例1:输入:root=[5,3,
Yamai Yuzuru
·
2024-02-08 02:40
算法编程笔记
流程图
leecode
算法
数据结构
2 月 7 日
算法练习
- 数据结构-并查集
并查集并查集是一种图形数据结构,用于存储图中结点的连通关系。每个结点有一个父亲,可以理解为“一只伸出去的手”,会指向另外一个点,初始时指向自己。一个点的根节点是该点的父亲的父亲的的父亲,直到某个点的父亲是自己根当两个点的根相同时,我们就说他们是属于同一类,或者说是连通的。如下:7、5、1、3、6的根都是3,所以他们是连通的,2、4是连通的,而2、6不连通,因为他们的根不同找根找根的方法是:如果当前
小蒋的学习笔记
·
2024-02-08 02:14
算法
算法
数据结构
Acwing
141 周赛 解题报告 | 珂学家 | 逆序数+奇偶性分析
前言整体评价很普通的一场比赛,t2思维题,初做时愣了下,幸好反应过来了。t3猜猜乐,感觉和逆序数有关,和奇偶性有关。不过要注意int溢出。欢迎关注:珂朵莉的天空之城A.客人数量题型:签到累加和即可importjava.io.BufferedInputStream;importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[
珂朵莉MM
·
2024-02-08 01:37
Acwing周赛
解题报告
java
开发语言
算法
矩阵
线性代数
[
算法练习
3] - 深度优先M(岛屿数量 js)
leetcode200题:描述给你一个由‘1’(陆地)和‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例1:输入:grid=[[“1”,“1”,“1”,“1”,“0”],[“1”,“1”,“0”,“1”,“0”],[“1”,“1”,“0”,“0”,“0”],[“0”
双击空格001
·
2024-02-08 00:01
算法
深度优先
javascript
模拟栈相关练习
Acwing
828模拟栈实现一个栈,栈初始为空,支持四种操作:pushx–向栈顶插入一个数x;pop–从栈顶弹出一个数;empty–判断栈是否为空;query–查询栈顶元素。
不想睡觉_
·
2024-02-07 17:04
数据结构
算法
数据结构
模拟队列相关练习
Acwing
829模拟队列实现一个队列,队列初始为空,支持四种操作:pushx–向队尾插入一个数x;pop–从队头弹出一个数;empty–判断队列是否为空;query–查询队头元素。
不想睡觉_
·
2024-02-07 17:04
数据结构
算法
数据结构
链表相关练习
Acwing
826单链表实现一个单链表,链表初始为空,支持三种操作:(1)向链表头插入一个数;(2)删除第k个插入的数后面的数;(3)在第k个插入的数后插入一个数现在要对该链表进行M次操作,进行完所有操作后
不想睡觉_
·
2024-02-07 17:33
数据结构
链表
算法
c++
AcWing
4956. 冶炼金属
4956.冶炼金属-
AcWing
题库思路:可以冶炼出b个金属,说明b大于等于a乘上转化率,b+1小于a乘上转化率,转化率就在(b+1)/a和b/a之间,左开右闭,因为b是一个整数,根据生活经验,算出来的数据要进行下取整
wsh1c6
·
2024-02-07 17:19
acwing
算法
c++
数据结构
最小生成树刷题汇总
Acwing
346走廊泼水节给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树。求增加的边的权值总和最小是多少。
徒手装机甲
·
2024-02-07 12:32
其他补题
图论
最小生成树个数
今天练习最小生成树时做到这样一个题1150.最小生成树计数-
AcWing
题库一个很裸的求最小生成树个数的题,搜题解发现矩阵树来求解很好,关于图论的结论一般证明都非常麻烦,而且我觉得会用就好,这里附上大佬的证明
兔猪猪兔
·
2024-02-07 12:31
矩阵
算法
矩阵树
最小生成树计数
算法练习
:最小生成树
目录Prime算法数据结构核心代码Kruskal算法数据结构算法思路核心代码例题最小生成树试炼之最短网络描述输入数据范围输出输入样例1输出样例1Prime算法数据结构二维数组:graph[n][n]:存储图distance[n]:存储正在生成的最小生成树与未连接结点的最小距离v[n]:存储已加入正在生成的最小生成树的点核心代码intPrime(){for(inti=0;ia[min_pointer
羊老开
·
2024-02-07 12:29
算法练习
算法
2 月 6 日
算法练习
- 深度优先搜索
砝码承重【问题描述】你有一架天平和N个砝码,这N个砝码重量依次是W1,W2,...,WN。请你计算一共可以称出多少种不同的正整数重量?注意砝码可以放在天平两边。【输入格式】输入的第一行包含一个整数N。第二行包含N个整数:W1,W2,W3,...,WN。【输出格式】输出一个整数代表答案。【样例输入】3146【输出样例】10【样例说明】能称出的10种重量是:1、2、3、4、5、6、7、9、10、11。
小蒋的学习笔记
·
2024-02-07 10:54
算法
深度优先
算法
图论
算法练习
-四数之和(思路+流程图+代码)
难度参考难度:中等分类:数组难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记,旨在督促自己认真学习。题目给定一个包含n个整数的数组nums和一个目标值target,判断nums中是否存在四个元素a,b,c和d,使得a+b+c+d的值与target相等?找出所有满足条件且不重复的四元组。示例1:输入
Yamai Yuzuru
·
2024-02-07 06:27
算法编程笔记
算法
位运算:进制
4982.进制-
AcWing
题库给定两个整数a,b请你计算,在[a,b]范围内有多少个整数满足其二进制表示恰好有一个0。不考虑前导0。
防御塔策略
·
2024-02-07 05:05
算法
数据结构
c++
位运算
数论
数据结构与
算法练习
-冒泡排序
python数据结构与
算法练习
-冒泡python实现这里仅记录冒泡排序的思想以及简单解答,考试中面对排序问题应该不会限制使用方法。思想:冒泡排序是通过元素与元素之间的比较与交换来达到对列表的重新排列。
Hide on spring water
·
2024-02-07 04:23
数据结构
算法
排序算法
AcWing
-14:不修改数组找出重复的数字(Java语言实现)
classSolution{publicintduplicateInArray(int[]nums){for(inti=0;i<nums.length-1;i++){for(intj=i+1;j<nums.length;j++){if(nums[i]==nums[j]){returnnums[i];}}}return-1;}}
藤原豆腐的拓海
·
2024-02-07 03:39
算法
排序算法
java
数据结构
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
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
其他