LeetCode 每日一题 2023/7/31-2023/8/6

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步


目录

      • 7/31 143. 重排链表
      • 8/1 2681. 英雄的力量
      • 8/2 822. 翻转卡片游戏
      • 8/3 722. 删除注释
      • 8/4 980. 不同路径 III
      • 8/5
      • 8/6


7/31 143. 重排链表

快慢指针找到链表中间位置
反转后半截链表
再将两段链表拼接

class ListNode(object):def __init__(self, val=0, next=None):self.val = valself.next = next
def reorderList(head):""":type head: ListNode:rtype: None Do not return anything, modify head in-place instead."""if not head or not head.next or not head.next.next:returnemp = ListNode()emp.next = headslow,fast = emp,empend = fastwhile fast:slow = slow.nextend = fastfast = fast.nextif not fast:breakend=fastfast = fast.next#反转 slow <-endpre = slownow = slow.nextwhile now!=end:n = now.nextnow.next = prepre=nownow=nnow.next = preleft = headright = endwhile left!=right:nl = left.nextleft.next = rightleft = nlif left==right:breaknr=right.nextright.next=leftright=nrleft.next=None

8/1 2681. 英雄的力量

顺序不影响结果 将nums排序
枚举每个元素作为子序列最小值的贡献

def sumOfPower(nums):""":type nums: List[int]:rtype: int"""mod=10**9+7nums.sort()ans = 0p = 0for x in nums[::-1]:ans = (ans+(x*x%mod)*x)%modans = (ans+x*p)%modp = (p*2+x*x)%modreturn ans

8/2 822. 翻转卡片游戏

如果正反面数字相同的必定不会是答案
记录正反面相同的数字
在剩余的数字中找最小值

def flipgame(fronts, backs):""":type fronts: List[int]:type backs: List[int]:rtype: int"""m = {}for i in range(len(fronts)):if fronts[i]==backs[i]:m[fronts[i]]=1ans = float("inf")for v in fronts+backs:if v not in m:ans = min(ans,v)return ans if ans!=float("inf") else 0

8/3 722. 删除注释

模拟 rm标记当前是否在/*内
cur为当前字符串

def removeComments(source):""":type source: List[str]:rtype: List[str]"""rm = Falsecur = ""ans = []for s in source:n = len(s)if not rm:cur +=s[0]i = 1while  i<n:c = s[i-1:i+1]if rm:if c=="*/":i+=1if i<n:cur+=s[i]rm=False                    else:  if c=="//":cur = cur[:-1]breakelif c=="/*":cur = cur[:-1]rm=Truei+=2continuecur+=s[i]i+=1if not rm and cur!="":ans.append(cur)cur=""return ans

8/4 980. 不同路径 III

使用二进制数标记每一个坐标是否经过 x,y 可以标记为第mx+y位
finish为所有位置经过后的状态 每一位为1
path为当前经过的位置 初始化将-1标记为已经过
sx,sy记录起始点

def uniquePathsIII(grid):""":type grid: List[List[int]]:rtype: int"""n,m = len(grid),len(grid[0])finish = (1<<m*n)-1mem = {}sx,sy = 0,0path = 0for i,row in enumerate(grid):for j,v in enumerate(row):if v<0:print(i,j)path |= 1<<(i*m+j)elif v==1:sx,sy=i,jdef dfs(x,y,path):if x<0 or x>=n or y<0 or y>=m or path>>(x*m+y)&1:return 0path |= 1<<(x*m+y)if grid[x][y]==2:v=path==finishmem[(x,y,path)]=vreturn vv = dfs(x-1,y,path)+dfs(x,y-1,path)+dfs(x+1,y,path)+dfs(x,y+1,path)mem[(x,y,path)]=vreturn vreturn dfs(sx,sy,path)

8/5


8/6


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/23100.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++学习笔记总结:算法

算法 参考文献 C进阶&#xff1a;STL算法总结C标准库STL算法 1 泛型算法概览 说明 容器的迭代器使得算法不依赖于容器。但算法依赖于元素类型的操作。标准库仅仅提供了100多个算法 头文件 头文件功能<algorithm>算法函数<numeric>数值算法<functional>函…

WebSocket整合直播

由于浏览器不支持对于rtmp协议推拉流&#xff0c;所以需要后台对传输的数据进行处理&#xff0c;将数据转接&#xff0c;为了实现其实时性&#xff0c;使用websocket将数据传输 先使用obs和vlc测试正常的推拉流是否正常 然后在跑本地后台传输视频 使用JavaCV技术传输音视频 …

opencv基础40-礼帽运算(原始图像减去其开运算)cv2.MORPH_TOPHAT

礼帽运算是用原始图像减去其开运算图像的操作。礼帽运算能够获取图像的噪声信息&#xff0c;或者得到比原始图像的边缘更亮的边缘信息。 例如&#xff0c;图 8-22 是一个礼帽运算示例&#xff0c;其中&#xff1a; 左图是原始图像。中间的图是开运算图像。右图是原始图像减开运…

python数据处理程序代码,如何用python处理数据

大家好&#xff0c;给大家分享一下python数据处理程序代码&#xff0c;很多人还不知道这一点。下面详细解释一下。现在让我们来看看&#xff01; 要求&#xff1a;分别以james&#xff0c;julie&#xff0c;mikey&#xff0c;sarah四个学生的名字建立文本文件&#xff0c;分别存…

【NLP PyTorch】字符级RNN循环网络模型姓氏对应国家分类(项目详解)

字符级RNN模型姓氏对应国家分类 1 序言1 数据来源与加载1.1 数据来源1.2 数据加载2 数据预处理2.1 单个字符数据处理标准2.2 单词的张量构造3 模型创建4 模型训练5 模型检验6 模型预测7 模型部署1 序言 本文的任务主要来源于PyTorch的官方教程,即给定各国人名的数据集,你需要…

shell指令的应用

整理思维导图判断家目录下&#xff0c;普通文件的个数和目录文件的个数输入一个文件名&#xff0c;判断是否为shell脚本文件&#xff0c;如果是脚本文件&#xff0c;判断是否有可执行权限&#xff0c;如果有可执行权限&#xff0c;运行文件&#xff0c;如果没有可执行权限&…

测试平台——项目模块模型类设计

这里写目录标题 一、项目应用1、项目包含接口&#xff1a;2、创建子应用3、项目模块设计a、模型类设计b、序列化器类设计c、视图类设计 4、接口模块设计a、模型类设计b、序列化器类设计c、视图类设计 5、环境模块设计6、DRF中的通用过滤6.1、设置过滤器后端 一、项目应用 1、项…

SpringBoot统一功能处理(拦截器)

1.用户登录权限校验 1.1自定义拦截器 写一个类去实现HandlerInterceptor接口表示当前类是一个拦截器,再重写HandlerInterceptor接口中的方法,preHandle为在方法执行前拦截,postHandle为方法执行中拦截,afterCompletion为方法执行中拦截.需要在什么时候拦截就重写什么方法 Co…

百度智能云“千帆大模型平台”最新升级:接入Llama 2等33个模型!

今年3月&#xff0c;百度智能云推出“千帆大模型平台”。作为全球首个一站式的企业级大模型平台&#xff0c;千帆不但提供包括文心一言在内的大模型服务及第三方大模型服务&#xff0c;还提供大模型开发和应用的整套工具链&#xff0c;能够帮助企业解决大模型开发和应用过程中的…

人工智能可解释性分析导论(初稿)

目录 思维导图 1.黑箱所带来的问题 2.从应用面论述为什么要进行可解释性分析 2.1可解释性分析指什么 2.2可解释性分析的必要性 2.3可解释性分析应用实例 2.4 可解释性分析的脑回路&#xff08;以可视化为例如何&#xff09; 3.如何研究可解释性分析 3.1使用好解释的模型 3…

Redis-2

Redis 持久化 Redis 为了保证效率&#xff0c;数据缓存在了内存中&#xff0c;但是会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件中&#xff0c;以保证数据的持久化。总的目的把数据保存到硬盘&#xff0c;有 RDB 和 AOF 两种。 RDB 持久化方案: RDB 是一…

ClickHouse SQL与引擎--基本使用(一)

1.查看所有的数据库 show databases; 2.创建库 CREATE DATABASE zabbix ENGINE Ordinary; ATTACH DATABASE ck_test ENGINE Ordinary;3.创建本地表 CREATE TABLE IF NOT EXISTS test01(id UInt64,name String,time UInt64,age UInt8,flag UInt8 ) ENGINE MergeTree PARTI…

mysql高级(尚硅谷-夏磊)

目录 内容介绍 Linux下MySQL的安装与使用 Mysql逻辑架构 Mysql存储引擎 Sql预热 索引简介 内容介绍 1、Linux下MySQL的安装与使用 2、逻辑架构 3、sql预热 Linux下MySQL的安装与使用 1、docker安装docker run -d \-p 3309:3306 \-v /atguigu/mysql/mysql8/conf:/etc/my…

VGG卷积神经网络-笔记

VGG卷积神经网络-笔记 VGG是当前最流行的CNN模型之一&#xff0c; 2014年由Simonyan和Zisserman提出&#xff0c; 其命名来源于论文作者所在的实验室Visual Geometry Group。 测试结果为&#xff1a; 通过运行结果可以发现&#xff0c;在眼疾筛查数据集iChallenge-PM上使用VGG…

[LeetCode]链表相关题目(c语言实现)

文章目录 LeetCode 203. 移除链表元素LeetCode 237. 删除链表中的节点LeetCode 206. 反转链表ⅠLeetCode 92. 反转链表 II思路 1思路 2 LeetCode 876. 链表的中间结点剑指 Offer 22. 链表中倒数第k个节点LeetCode 21. 合并两个有序链表LeetCode 86. 分隔链表LeetCode 234. 回文…

【MySQL】MySQL管理 (十四)

🚗MySQL学习第十四站~ 🚩本文已收录至专栏:MySQL通关路 ❤️文末附全文思维导图,感谢各位点赞收藏支持~ 一.系统数据库 MySQL8.0数据库安装完成后,自带了一下四个数据库,具体作用如下: 数据含义mysql存储MySQL服务器正常运行所需要的各种信息 (时区、慢日志、主从复…

flask-----蓝图

1.引入蓝图 flask都写在一个文件中&#xff0c;项目这样肯定不行&#xff0c;会导致循环导入的问题&#xff0c;分目录&#xff0c;分包&#xff0c;使用蓝图划分目录。 2.使用蓝图 步骤如下&#xff1a; -1 实例化得到一个蓝图对象-order_blueBlueprint(order,__name__,tem…

Pytorch入门学习——快速搭建神经网络、优化器、梯度计算

我的代码可以在我的Github找到 GIthub地址 https://github.com/QinghongShao-sqh/Pytorch_Study 因为最近有同学问我如何Nerf入门&#xff0c;这里就简单给出一些我的建议&#xff1a; &#xff08;1&#xff09;基本的pytorch&#xff0c;机器学习&#xff0c;深度学习知识&a…

C语言----字节对齐

一&#xff1a;字节对齐的概念 针对字节对齐&#xff0c;百度百科的解释如下&#xff1a; 字节对齐是字节按照一定规则在空间上排列&#xff0c;字节(Byte)是计算机信息技术用于计量存储容量和传输容量的一种计量单位&#xff0c;一个字节等于8位二进制数&#xff0c;在UTF-8编…

ChatGPT在工作中的七种用途

1. 用 ChatGPT 替代谷歌搜索引擎 工作时&#xff0c;你一天会访问几次搜索引擎&#xff1f;有了 ChatGPT&#xff0c;使用搜索引擎的频率可能大大下降。 据报道&#xff0c;谷歌这样的搜索引擎巨头&#xff0c;实际上很担心用户最终会把自己的搜索工具换成 ChatGPT。该公司针对…