草庐IT

Mysql——一道简单的数据库设计题

假设我有导师参加在线网络类(class)并创建学习包。在线网络类(class)和学习包都可以由学生进行评分,最后导师的评分是所有类(class)的简单平均数他的类(class)和包的评分。这是我们当前的Ratings表的表架构-CREATETABLEIFNOTEXISTS`Ratings`(`id_rating`int(10)unsignedNOTNULLauto_increment,`id_teacher`int(10)unsigneddefaultNULLCOMMENT'theteacherwhocreatedtheclass/pack',`id_lp`int(10)unsigne

从一道算法题入手带你优化Python代码,体验效率成倍提升

学习python的小伙伴都知道python语法简单,学习起来上手快。但是代码的运行效率一直让人诟病。确实,在一些场景中,python代码的运行效率确实没有C++或者C效率高。但是在一些场景下,我们也可以通过一些优化来提升运行效率。下面我们从一道算法题入手带着大家剖析一下。题目:给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标,如果有多组,只返回一组即可。这道题非常简单,是Leecode刷题网站的第1题。下面我们按步骤来解析优化。1.方法1:最简单的想法,for循环暴力解决:最简单粗暴的方法,即从列表的第一个数开始,

每天一道leetcode:1192. 查找集群内的关键连接(图论&困难&tarjan算法)

今日份题目:力扣数据中心有n台服务器,分别按从0到n-1的方式进行了编号。它们之间以服务器到服务器的形式相互连接组成了一个内部集群,连接是无向的。用connections表示集群网络,connections[i]=[a,b]表示服务器a和b之间形成连接。任何服务器都可以直接或者间接地通过网络到达任何其他服务器。关键连接是在该集群中的重要连接,假如我们将它移除,便会导致某些服务器无法访问其他服务器。请你以任意顺序返回该集群内的所有关键连接。示例1输入:n=4,connections=[[0,1],[1,2],[2,0],[1,3]]输出:[[1,3]]解释:[[3,1]]也是正确的。示例2输入:

Kruskal,最短路综合应用,一道图论一

Problem-1525(nefu.edu.cn)Problem:1525TimeLimit:1000msMemoryLimit:131072KDescription#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;typedeflonglongLL;constintN=1e3+5,M=1e5+5;intn,m,k;structedge{ inta,b,w;}edge[M

C++---背包模型---潜水员(每日一道算法2023.3.13)

注意事项:本题是"动态规划—01背包"和"背包模型—二维费用的背包问题"的扩展题,优化思路不多赘述,dp思路会稍有不同,下面详细讲解。题目:潜水员为了潜水要使用特殊的装备。他有一个带2种气体的气缸:一个为氧气,一个为氮气。让潜水员下潜的深度需要各种数量的氧和氮。潜水员有一定数量的气缸。每个气缸都有重量和气体容量。潜水员为了完成他的工作需要特定数量的氧和氮。他完成工作所需气缸的总重的最低限度的是多少?例如:潜水员有5个气缸。每行三个数字为:氧,氮的(升)量和气缸的重量:3361201025129550250145130420119如果潜水员需要5升的氧和60升的氮则总重最小为249(1,2或者4

每天一道leetcode:1466. 重新规划路线(图论&中等&广度优先遍历)

今日份题目:n座城市,从0到n-1编号,其间共有n-1条路线。因此,要想在两座不同城市之间旅行只有唯一一条路线可供选择(路线网形成一颗树)。去年,交通运输部决定重新规划路线,以改变交通拥堵的状况。路线用connections表示,其中connections[i]=[a,b]表示从城市a到b的一条有向路线。今年,城市0将会举办一场大型比赛,很多游客都想前往城市0。请你帮助重新规划路线方向,使每个城市都可以访问城市0。返回需要变更方向的最小路线数。题目数据保证每个城市在重新规划路线方向后都能到达城市0。示例1输入:n=6,connections=[[0,1],[1,3],[2,3],[4,0],[

每天一道leetcode:1926. 迷宫中离入口最近的出口(图论&中等&广度优先遍历)

今日份题目:给你一个mxn的迷宫矩阵maze(下标从0开始),矩阵中有空格子(用'.'表示)和墙(用'+'表示)。同时给你迷宫的入口entrance,用entrance=[entrancerow,entrancecol]表示你一开始所在格子的行和列。每一步操作,你可以往上,下,左或者右移动一个格子。你不能进入墙所在的格子,你也不能离开迷宫。你的目标是找到离entrance最近的出口。出口的含义是maze边界上的空格子。entrance格子不算出口。请你返回从entrance到最近出口的最短路径的步数,如果不存在这样的路径,请你返回-1。示例1输入:maze=[["+","+",".","+"]

每天一道leetcode:797. 所有可能的路径(图论&中等&深度优先遍历)

今日份题目:给你一个有n个节点的有向无环图(DAG),请你找出所有从节点0到节点n-1的路径并输出(不要求按特定顺序)graph[i]是一个从节点i可以访问的所有节点的列表(即从节点i到节点graph[i][j]存在一条有向边)。示例1输入:graph=[[1,2],[3],[3],[]]输出:[[0,1,3],[0,2,3]]解释:有两条路径0->1->3和0->2->3示例2输入:graph=[[4,3,1],[3,2,4],[3],[4],[]]输出:[[0,4],[0,3,4],[0,1,3,4],[0,1,2,3,4],[0,1,4]]提示n==graph.length20graph

每天一道leetcode:1129. 颜色交替的最短路径(图论&中等&广度优先遍历)

今日份题目:给定一个整数n,即有向图中的节点数,其中节点标记为0到n-1。图中的每条边为红色或者蓝色,并且可能存在自环或平行边。给定两个数组redEdges和blueEdges,其中:redEdges[i]=[ai,bi]表示图中存在一条从节点ai到节点bi的红色有向边,blueEdges[j]=[uj,vj]表示图中存在一条从节点uj到节点vj的蓝色有向边。返回长度为n的数组answer,其中answer[X]是从节点0到节点X的红色边和蓝色边交替出现的最短路径的长度。如果不存在这样的路径,那么answer[x]=-1。示例1输入:n=3,red_edges=[[0,1],[1,2]],bl

【leetcode刷题】--- 我遇到一道很坏很坏的题~

🔥系列专栏:【Leetcode】刷题与总结目录前言题目普通解法🌱思路一🌱思路二其他解法🌱思路三🌱思路四写在最后前言今天在Leetcode上刷题,看到一道题很有趣。我乍一看,没有思路,但是仔细想了想,还是没思路。。。。哈哈,开个玩笑。当我写出后解法后,系统老是提醒超出时间限制,太难了,努力想了好久,优化解法后终于通过了!还挺有成就感。后来在官方的解法中,我又学到了其他的解题方法,解题的思路非常棒,所以就有了这篇文章,想和大家分享一下。题目✨描述:给定一个数组height,数组里有n个非负整数每个元素都表示一个宽度为1的柱子的高度现在让我们来计算按此排列的柱子,下雨之后能接多少雨水。🔋例如:输入: