自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Leetcode刷题记录9——找出字符串中第一个匹配项的下标

(3)对于haystack长度等于needle的情况,再分两种情况,如果haystack不等于needle,直接返回-1,如果相等,直接返回0。(4)对于haystack长度大于needle的情况,对haystack进行遍历,找到第一个与needle相同的字符段,并返回索引。(2)对于haystack长度小于needle的情况,needle 一定不是 haystack 的一部分,直接返回 -1。解释:“leeto” 没有在 “leetcode” 中出现,所以返回 -1。

2025-03-21 19:45:54 281

原创 Leetcode刷题记录8——移除元素

后一位置**,通过一个快指针遍历数组中的所有元素,将快指针找到的与val不等的元素赋值给慢指针定位的元素,并将慢指针移动一位,遍历后即为所求。其中,“移除数组”是指已经将与val相等元素移除出去的部分。解释:你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。输入:nums = [0,1,2,2,3,0,4,2], val = 2。输入:nums = [3,2,2,3], val = 3。输出:5, nums = [0,1,4,0,3,输出:2, nums = [2,2,

2025-03-20 09:01:59 202

原创 Leetcode刷题记录7——删除有序数组中的重复项

给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2。输入:nums = [0,0,1,1,1,2,2,3,3,4]

2025-03-08 22:13:45 276

原创 Leetcode刷题记录6——合并两个有序链表

思路一:通过递归的方式,每一次递归都由两个链表元素最小的的节点作为前置节点,连接其它节点的递归结果,由于每一次都是选择最小节点,可以保证最终链表的升序排列。(2)遍历两个链表,把较小的节点作为下一个节点,循环遍历直到一个链表被查询完。新链表是通过拼接给定的两个链表的所有节点组成的。输入:l1 = [1,2,4], l2 = [1,3,4](3)把另一个链表剩余的部分接到新链表后,返回。输入:l1 = [], l2 = [0]输入:l1 = [], l2 = []输出:[1,1,2,3,4,4]

2025-03-05 21:02:12 221

原创 Leetcode刷题记录5——有效的括号

(3)为了避免对类似于’)))(((‘和’}}{{'的括号左右顺序错误情况误判为正确,在每一次做完加减法后都需要加一个判断,如果small、mid、large三个变量中出现一个负值,代表该字符串一定出现了左右顺序错误,直接返回False。(2)遍历字符串,遇到左边的括号就压入栈,遇到右边的括号就查看栈顶的元素,如果匹配,就pop出,如果不匹配,把右边的括号也压入栈。给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。(1)建立括号之间的匹配字典,以及空的栈。

2025-03-03 09:43:44 245

原创 Leetcode刷题记录4——最长公共前缀

(1)首先找到字符串数组中“最大”和“最小”的两个字符串(此处我直接用的python中的min和max函数,我觉得应该是比较ASCII码)。(5)如果在此过程中发现最长公共前缀为空,可以直接退出循环,以节省算力资源。输入:strs = [“flower”,“flow”,“flight”]输入:strs = [“dog”,“racecar”,“car”](4)将两个字符一致的部分更新为新的最长公共前缀,重新进入。(2)找到这两个字符串的最长公共前缀即为所求。如果不存在公共前缀,返回空字符串 “”。

2025-03-02 12:30:09 115

原创 Leetcode刷题记录3——罗马数字转整数

通常情况下,罗马数字中小的数字在大的数字的右边。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4。例如, 罗马数字 2 写做 II ,即为两个并列的 1。否则,将其加到总和中。X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。解释: M = 1000, CM = 900, XC = 90, IV = 4.I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。

2025-03-01 21:57:33 232

原创 Leetcode刷题记录2——回文数

PS:之后我又看了下比我快的和比我慢的题解,似乎也都局限于这两种算法,可能这两种算法的时间消耗跟算法选择关系不大,可能跟硬件有关?给你一个整数 x ,如果 x 是一个回文整数,返回 true;否则,返回 false。解释:从左向右读, 为 -121。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。解释:从右向左读, 为 01。(3)x>0,通过取余10的方式一步步翻转x。例如,121 是回文,而 123 不是。(1)x<0,返回False;(2)x=0,返回True;

2025-03-01 15:41:24 127

原创 Leetcode刷题记录1——两数之和

记录leetcode刷题中的解题思路

2025-03-01 11:23:07 274

原创 PyQT5学习笔记1——从UI界面设计到python代码转换与调用

本文的编写前提为读者已经完成了PyQT5的安装,并在pycharm中完成了相关配置,具体步骤可参考这位大佬的博客:本文的主要内容有:1、在PyQT中完成UI界面设计,并将设计好的UI界面保存为.ui文件2、将保存的.ui文件转换为.py文件3、编写python代码实现UI界面的调用下面开始正文。

2024-09-02 11:28:45 926

原创 python学习记录6——调用自己写的函数

在python中,调用自己写的函数的两种方式

2024-05-29 10:30:50 891 1

原创 python学习记录5——Python中的数

4、在Python中书写很大的数时可以使用下划线将其中的数字分组,使其更清晰易读,打印这种数时不会打印出其中的下划线。3、无论是哪种运算,只要有操作数是浮点数,Python默认得到的结果总是浮点数,即便结果原本为整数也是如此。2、Python中将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能整除。Python中常见的数包括整数和浮点数,下面记录一些特别的、反常识的应用法则。

2023-06-28 18:22:53 190 1

原创 python学习记录4——库的引用

Python提供了许多内置库和第三方库,可以帮助开发人员更快地编写代码。在Python中,要使用库,需要先引用它们。

2023-04-29 09:53:55 3043

原创 python学习记录3——基于turtle库的基本图形绘制

turtle库是Python中的一个绘图库,它可以让我们使用简单的命令来绘制各种图形,如线条、圆形、矩形等等。本文记录一部分turtle库的函数及其使用方法。

2023-04-29 09:33:44 675

原创 python学习记录2——输入输出

input()函数的使用格式为:<变量> = input(<提示信息字符串>)用户输入的信息以类型保存在<变量>中。

2023-04-17 09:11:47 189

原创 python学习记录1——缩进、注释、变量、保留字与数据类型

与其他语言不同,如C语言中,代码块的开始与结束可以用花括号表示,但在Python中,缩进是唯一的表示代码块的层次结构的方式,缩进的数量表示代码块的层次关系,所以在Python强制要求缩进,这也间接提高了代码的可读性。在这个示例中,if语句和else语句都是一个代码块,它们之间的缩进表示它们在同一个层次结构中。这个代码会出现语法错误,如下图所示,编译器会提示你if之后需要添加缩进的代码块。Python的强制缩进有以下几个特点:(1)缩进必须是空格或制表符,不能混用。

2023-04-13 09:56:28 440

原创 ROS机器人开发学习记录2——通过opencv读入本地图像并显示

通过ros和opencv实现图像读取和显示

2022-03-05 21:36:09 3830

原创 用8255实现电子钟功能

电子钟大作业内容利用 8253 和 8259 芯片实现实时电子时钟的功能;利用 8255 控制七段数码管完成定时扫描显示。显示格式为 xx 时 xx 分 xx 秒,每隔 1s,时间值改一次。开关 1 可选择时、分、秒,开关 2 可对所选的时、分、秒进行加 1,小时加至 23后清 0,分、秒加至 59 后清 0。大作业要求1、查阅资料,掌握共阳极七段数码管的工作原理。2、分析实验原理,设计实验方案,绘出实验连线图,搭建仿真实验电路。3、绘制实验程序流程图。4、编写实验程序,检查无误后

2021-11-25 17:39:07 6330 7

原创 数据结构上机实验记录——折半插入排序、快速排序、选择排序算法

实验五• 从键盘输入10个数。• 编程实现分别用折半插入排序、快速排序、选择排序算法进行排序,输出排序后的序列。

2020-11-22 21:10:58 1469 2

原创 ROS机器人开发学习记录1——创建工作空间和功能包——ROS安装、工作空间与创建工作空间

问题一:什么是工作空间?工作空间是一个存放工程开发相关文件的文件夹。

2020-11-15 10:25:35 218

原创 数据结构上机实验记录——遍历二叉树

实验四• 遍历二叉树。• 请输入一棵二叉树的扩展的前序序列,经过处理后生成一棵二叉树,然后对于该二叉树输出前序、中序和后序遍历序列。• 测试:• 输入:ABCDE*GF***实现代码如下:#include<stdio.h>#include<stdlib.h>typedef struct TreeNode//二叉树链表 { char data; struct TreeNode *lchild,*rchild;//建立左指针和右指针 }node,*tree;in

2020-11-14 00:24:41 2055 1

原创 数据结构上机实验记录——栈实现计算器

实验三• 实现简单计算器的功能,请按照四则运算加、减、乘、除、幂(^)和括号的优先关系和惯例,编写计算器程序。要求支持运算符:+、-、、/、()和=:• 从键盘输入一个完整的表达式,以回车作为表达式输入结束的标志;• 输入表达式中的数值均为大于等于零的整数,如果中间计算过程中出现小数也只取整进行计算。• 例如,输入:(4+2)(2-10)=• 输出:-48...

2020-11-14 00:20:58 2263 7

原创 数据结构上机实验记录——归并顺序表

实验二归并顺序表。• 请按以下要求编程实现:• 从键盘输入两个升序排列的整数序列linka和linkb,每个序列以输入0为结束标记。• 将链表linka和linkb归并为linkc,linkc仍然为升序排列。归并完成后,linka和linkb为空表。输出linkc。• 对linkc进行处理,保持升序不变,删除其中重复的整数,对重复的整数只保留一个,输出删除重复整数后的链表。实现代码如下:#include<stdio.h>#include<stdlib.h>#incl

2020-11-14 00:12:08 545 1

原创 数据结构上机实验记录——约瑟夫环

实验一• 采用单向环表实现约瑟夫环。• 请按以下要求编程实现:• 从键盘输入整数m,通过create函数生成一个具有m个结点的单向环表。环表中的结点编号依次为1,2,……,m。• 从键盘输入整数s(1<=s<=m)和n,从环表的第s个结点开始计数为1,当计数到第n个结点时,输出该第n结点对应的编号,将该结点从环表中消除,从输出结点的下一个结点开始重新计数到n,这样,不断进行计数,不断进行输出,直到输出了这个环表的全部结点为止。• 循环链表(带有头结点的单向环表)最后一个

2020-11-14 00:07:07 1434 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除