刷题记录˃ʍ˂
一、1033. 移动石子直到连续

思路
这道题是一道数学题,它一共分为三种可能
第一种可能为三个石子本来就是连续的时候
第二种可能为最少步数为1的时候,相邻石子不能大于一格
第三种可能为最少步数为2的时候,这时相邻石子大于一格
那么第二种和第三种的最多步数都是 最远的石子 - 最近的石子 - 2
因为输入的数据是乱序的,所以还要先将他们排序了来
代码实现
int dis[3];void sort()
{int i , j , s , t;for(i = 0 ;i < 3 ; i++){s = i;for(j = i + 1 ; j < 3 ; j++)if(dis[s] > dis[j])s = j;if(s != i){t = dis[i];dis[i] = dis[s];dis[s] = t;}}
}int* numMovesStones(int a, int b, int c, int* returnSize){int *x=(int*)malloc(sizeof(int)*2);dis[0] = a;dis[1] = b;dis[2] = c;sort();a = dis[0];b = dis[1];c = dis[2];if(b - a == 1 && c - b == 1){x[0] = 0;x[1] = 0;}else if(b - a <= 2){x[0] = 1;x[1] = c - a - 2;}else if(c - b <= 2){x[0] = 1;x[1] = c - a - 2;}else{x[0] = 2;x[1] = c - a - 2;}*returnSize = 2;return x;
}
二、1376. 通知所有员工所需的时间


思路
这个题可以联想到树的结构,我们可以从最底层的员工开始向不断的找他的上级,再找的过程中,把通知的时间都加上,然后与max(最长的时间)相比,将较大的时间赋给max,然后再去找下一个底层员工,那么最后的max就是要通知所有员工的话要用的时间
做这个题的时候,力扣的这个自动判断数组越界就很烦,但实际上,我这个也确实没越界,所以这时候就要设一个新的数组来代替infomTime
代码实现
int numOfMinutes(int n, int headID, int* manager, int managerSize, int* informTime, int informTimeSize)
{int ans[100001];for(int i=0;i<n;i++){ans[i]=informTime[i];}int i,max=0,a,t;for(i=0;i<n;i++){if(ans[i]==0){a=manager[i];if(a==-1)t=ans[headID];else {t=ans[a];while(a!=-1){a=manager[a];if (a == -1)continue;t+=ans[a];}}if(max<t)max=t;}}return max;
}
三、有效的括号
思路
关于栈的最基础的问题,只要实现了入栈和出栈就行了,当我们遇见左括号的的时候就将它入栈,当我们遇见右括号的时候且符合右括号的时候,就将它出栈
要注意一点的是,当把字符串中的括号全都遍历完时,如果栈里面还有括号,那么也是不正确的
再次吐槽一点,力扣的这个编译器跟真的好伤人心
代码实现
typedef struct
{char date[10001];int top;
}zlink;void enzlink(zlink *p,char x)
{p->top++;p->date[p->top] = x;
}void dezlink(zlink *p)
{p->top--;
}bool isValid(char* s) {zlink p;p.top = 0;p.date[0] = '0';for (int i = 0; i < strlen(s); i++){if (s[i] == '(' || s[i] == '{' || s[i] == '[')enzlink(&p, s[i]);else{if (p.date[p.top] == '(' && s[i] == ')')dezlink(&p);else if (p.date[p.top] == '{' && s[i] == '}')dezlink(&p);else if (p.date[p.top] == '[' && s[i] == ']')dezlink(&p);else return false;}}if (p.top != 0)return false;return true;
}
四、387. 字符串中的第一个唯一字符

思路
首先这个题,可以用哈希
我们可以设置一个记录次数的数组,当一个字母出现过,那么次数至少为1,用字母的位置在新数组中显示,后面遍历数组的时候,遇到第一个次数为1 的,直接返回它的位置;
代码实现
int firstUniqChar(char * s){int num[30]={0};for(int i=0;i<strlen(s);i++){num[s[i]-'a']++;}for(int i=0;i<strlen(s);i++){if(num[s[i]-'a']==1)return i;}return -1;
}
相关文章:
刷题记录˃ʍ˂
一、1033. 移动石子直到连续 思路 这道题是一道数学题,它一共分为三种可能 第一种可能为三个石子本来就是连续的时候 第二种可能为最少步数为1的时候,相邻石子不能大于一格 第三种可能为最少步数为2的时候,这时相邻石子大于一格 那么第二…...
Word2vec原理+实战学习笔记(二)
来源:投稿 作者:阿克西 编辑:学姐 前篇:Word2vec原理实战学习笔记(一) 视频链接:https://ai.deepshare.net/detail/p_5ee62f90022ee_zFpnlHXA/6 5 对比模型(论文Model Architectur…...
什么是Java的多线程?
Java的多线程是指在同一时间内,一个程序中同时运行多个线程。每个线程都是一个独立的执行路径,可以独立地执行代码。Java中的多线程机制使得程序可以更高效地利用计算机的多核处理器和CPU时间,从而提高程序的性能和响应能力。 创建和使用Jav…...
“use strict“是什么? 使用它有什么优缺点?
严格模式 - JavaScript | MDN Javascript 严格模式详解 - 阮一峰的网络日志 1、"use strict" 是什么? "use strict" :指定代码在严格条件下执行; 2、 使用 "use strict" 有什么优缺点? ① 严格模式通过抛出错…...
【C++】C++11常用特性总结
哥们哥们,把书读烂,困在爱里是笨蛋! 文章目录 一、统一的列表初始化1.统一的{}初始化2.std::initializer_list类型的初始化 二、简化声明的关键字1.decltype2.auto && nullptr 三、STL中的一些变化1.新增容器:array &…...
泛型——List 优于数组
数组与泛型有很大的不同: 1. 数组是协变的(covariant) 意思是:如果Sub是Super的子类型,则数组类型Sub[] 是数组类型Super[] 的子类型。 2. 泛型是不变的(invariant) 对于任何两种不同的类型Ty…...
JavaScript中对象的定义、引用和复制
JavaScript是一种广泛使用的脚本语言,其设计理念是面向对象的范式。在JavaScript中,对象就是一系列属性的集合,每个属性包含一个名称和一个值。属性的值可以是基本数据类型、对象类型或函数类型,这些类型的值相互之间有着不同的特…...
JavaScript通过函数异常处理来输入圆的半径,输出圆的面积的代码
以下为实现通过函数异常处理来输入圆的半径,输出圆的面积的代码和运行截图 目录 前言 一、通过函数异常处理来输入圆的半径,输出圆的面积 1.1 运行流程及思想 1.2 代码段 1.3 JavaScript语句代码 1.4 运行截图 前言 1.若有选择,您可以…...
Ubuntu 安装 Mysql
主要内容 本文主要是实现在虚拟机 Ubuntu 18.04 成功安装 MySQL 5.7,并实现远程访问功能,以 windows 下客户端访问虚拟机上的 mysql 数据库。 1. 切换至 root 用户 ,shell 终端指令均执行在 root 用户下 sudo su 2. 安装并设置 mysql 安…...
【五一创作】【Midjourney】Midjourney 连续性人物创作 ② ( 获取大图和 Seed 随机种子 | 通过 seed 随机种子生成类似图像 )
文章目录 一、获取大图和 Seed 随机种子二、通过 seed 种子生成类似图像 一、获取大图和 Seed 随机种子 注意 : 一定是使用 U 按钮 , 在生成的大图的基础上 , 添加 信封 表情 , 才能获取该大图的 Seed 种子编码 ; 在上一篇博客生成图像的基础上 , 点击 U3 获取第三张图的大图 ;…...
分布式事务 --- Seata事务模式、高可用
一、事务模式 1.1、XA模式 XA 规范 是 X/Open 组织定义的分布式事务处理(DTP,Distributed Transaction Processing)标准,XA 规范 描述了全局的TM与局部的RM之间的接口,几乎所有主流的数据库都对 XA 规范 提供了支持。…...
SQL(基础)
DDL: 数据定义语言 Definition,用来定义数据库对象(数据库、表、字段)CREATE、DROP、ALTER DML: 数据操作语言 Manipulation,用来对数据库表中的数据进行增删改 INSERT、UPDATE、DELETE 注意: DDL是改变表的结构 DML…...
「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验
「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验 一、前言1.1 本次实践介绍1.2 本次实践目的 二、准备环境资源2.1 部署前需准备工作2.2 本地环境规划 三、部署Docker环境3.1 安装Docker3.2 配置Docker镜像加速3.3 开启路由转发3.4 重启Docker服务 四、检查本地Doc…...
计算机操作系统实验:银行家算法模拟
目录 前言实验目的实验内容实验原理实验过程代码如下代码详解算法过程运行结果 总结 前言 本文是计算机操作系统实验的一部分,主要介绍了银行家算法的原理和实现。银行家算法是一种用于解决多个进程对多种资源的竞争和分配的算法,它可以避免死锁和资源浪…...
机器学习:多项式拟合分析中国温度变化与温室气体排放量的时序数据
文章目录 1、前言2、定义及公式3、案例代码1、数据解析2、绘制散点图3、多项式回归、拟合4、注意事项 1、前言 当分析数据时,如果我们找的不是直线或者超平面,而是一条曲线,那么就可以用多项式回归来分析和预测。 2、定义及公式 多项…...
一个 24 通道 100Msps 逻辑分析仪
这是一个创建非常便宜的逻辑分析仪的项目,但其功能可与昂贵的商业分析仪相媲美。该分析仪可以以每秒 1 亿个样本的最高速度对多达 24 个通道进行采样,并且可以通过单个通道中的极性变化或多达 16 个通道形成的模式来触发。 该项目不仅包含硬件࿰…...
使用Process Explorer和Dependency Walker排查C++程序中dll库动态加载失败问题
目录 1、exe主程序启动时的库加载流程说明 2、加载dll库两种方式 2.1、dll库的隐式引用...
网工Python:如何使用Netmiko的SCP函数进行文件传输?
在网络设备管理中,传输配置文件、镜像文件等是经常需要进行的操作。Netmiko是一个Python库,可用于与各种网络设备进行交互,提供了一些用于传输文件的函数,其中包括SCP(Secure Copy Protocol)函数。本文将介…...
题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和--不能完全通过,最好情况通过67.
原题链接: 题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和 https://www.dotcpp.com/oj/problem3166.html 致歉 害,首先深感抱歉,这道题还是没有找到很好的解决办法。目前最好情况就是67分。 这道题先这样跳过吧,当然以后还…...
ChatGPT- OpenAI 的 模型(Model) 介绍
ChatGPT的火爆程度大家都知道了,该章节我们来了解一下 ChatGPT 一个关键概念 - 模型(Model)。主要是为大家介绍一下在 OpenAI 中,究竟有哪些模型可以使用。 在后续的章节,我们会分单独的小章节逐一的为大家介绍各个不同模型的调用以及接口参…...
3大技术突破:Sunshine革新家庭游戏串流体验的实战指南
3大技术突破:Sunshine革新家庭游戏串流体验的实战指南 【免费下载链接】Sunshine Sunshine: Sunshine是一个自托管的游戏流媒体服务器,支持通过Moonlight在各种设备上进行低延迟的游戏串流。 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshi…...
gemma-3-12b-it实际作品:10张不同领域测试图的图文理解准确率统计表
gemma-3-12b-it实际作品:10张不同领域测试图的图文理解准确率统计表 1. 测试背景与方法 最近我在实际使用gemma-3-12b-it模型时,对其图文理解能力产生了浓厚兴趣。这个由Google推出的多模态模型号称能够同时处理文本和图像输入,并生成准确的…...
Tailscale打洞失败太慢?手把手教你用Docker部署derper自建中转,告别国际绕行
Tailscale网络优化实战:用Docker自建derper中转节点提升连接速度 Tailscale作为现代零配置组网工具,其基于WireGuard协议的P2P直连特性确实令人惊艳——直到你发现两台设备之间的打洞成功率只有60%,而剩余40%的流量不得不绕行官方位于海外的中…...
图表数据提取的智能转换革命:从像素到数据点的精准跨越
图表数据提取的智能转换革命:从像素到数据点的精准跨越 【免费下载链接】WebPlotDigitizer WebPlotDigitizer: 一个基于 Web 的工具,用于从图形图像中提取数值数据,支持 XY、极地、三角图和地图。 项目地址: https://gitcode.com/gh_mirror…...
仅剩最后23套田间网关固件兼容包!Python农业物联网部署必备的8个设备驱动补丁(含Raspberry Pi 5专用版)
第一章:田间网关固件兼容包的农业物联网部署意义 在农业物联网(Agri-IoT)规模化落地过程中,田间网关作为边缘侧核心枢纽,承担着多源异构传感器数据汇聚、协议转换、本地决策与上云协同等关键职能。然而,我国…...
Gemini提示词反推教程!“图生图”来了
看到一张心仪的室内设计图,却不知道如何描述它的高级美? 其实,每一张令人惊艳的图片背后,都有一套隐藏的代码。今天,我们要分享一套“保姆级”教程:利用 MetaChat 平台上的 Gemini 3.1 Pro 充当你的私人审美…...
PyTorch 2.8镜像部署教程:适配550.90.07驱动的GPU监控与显存优化技巧
PyTorch 2.8镜像部署教程:适配550.90.07驱动的GPU监控与显存优化技巧 1. 镜像概述与环境准备 PyTorch 2.8深度学习镜像专为RTX 4090D 24GB显卡和CUDA 12.4环境深度优化,预装了完整的深度学习工具链。这个镜像已经过严格测试,确保在550.90.0…...
s2-pro开源大模型实战:低成本GPU部署语音合成服务完整流程
s2-pro开源大模型实战:低成本GPU部署语音合成服务完整流程 1. 前言:语音合成技术的新选择 语音合成技术正在改变我们与数字世界的交互方式。今天要介绍的s2-pro是Fish Audio开源的一款专业级语音合成模型镜像,它让高质量语音合成服务的部署…...
零基础玩转CTFShow Web1-7:手把手教你用Burp Suite和蚁剑拿flag
零基础玩转CTFShow Web1-7:从工具配置到实战渗透全指南 第一次接触CTF比赛时,看着其他选手在终端里敲出神秘代码就能拿到flag,总觉得这是黑客才能掌握的"黑魔法"。直到自己动手尝试才发现,只要掌握正确的工具和方法&…...
Citra 3DS模拟器:如何在PC端重温任天堂经典游戏的终极指南
Citra 3DS模拟器:如何在PC端重温任天堂经典游戏的终极指南 【免费下载链接】citra A Nintendo 3DS Emulator 项目地址: https://gitcode.com/gh_mirrors/cit/citra 想要在Windows、Linux或macOS系统上体验《精灵宝可梦》、《塞尔达传说》等经典3DS独占游戏吗…...
