自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode----移除链表元素&&快乐数

给你一个链表的头节点head和一个整数val,请你删除链表中所有满足的节点,并返回。

2024-04-14 23:41:43 272 1

原创 LeetCode-----删除有序数组中的重复项II&&回文链表

当看到题目时,我们可以想到用链表的知识判断回文数会非常的复杂,可以想到转化成数组的方法进行判断,首先遍历链表算出结点的数目,由此可以确定数组的长度,再次遍历链表,将节点中的值传到数组中,接下来就是数组判断回文数的题目了,我们利用双指针(对撞指针)的知识,创建头指针和尾指针分别指向数组的头和尾,循环判断它们是否相等,相等就将头指针向后移动一位,尾指针向前移动一位,不相等就直接返回false,当可以跳出循环时,说明该链表是回文链表,返回true.// 根据你的函数返回的长度, 它会打印出数组中。

2024-04-14 11:55:43 806 1

原创 LeetCode----只出现一次的数字&&

首先创建一个整型t,用来记录在第一次循环中当前数据在数组中出现的次数,如果t=1,说明数组中该数据只出现过一次,返回当前数据.,除了某个元素只出现一次以外,其余每个元素均出现两次。在移动零函数中,设置两个快慢函数,当快指针指向的数不为零时,交换此时快慢指针所指的值。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。首先写一个交换函数,方便交换移动零函数中快慢指针指向的数据的交换位置。移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。

2024-04-13 00:44:13 194 1

原创 LeetCode---删除链表的第n个结点&&最后一个单词的长度

单词的长度。

2024-04-12 00:10:08 367

原创 LeetCode螺旋矩阵II&&将所有数字用字符替换

首先为将要返回的矩阵分配内存空间,*returnColumnSize返回生成矩阵每一列的大小,为每一行数组申请空间,在循环中为每一列数组申请空间并赋值每一列的元素数目。其次思考在螺旋矩阵的实现过程中每次循环的条件(也就是寻找规律,找出每一圈循环过程中的不变量),可以思考出每一圈的四个方向的赋值过程中,每个方向的元素数目都应该相同。首先求出字符串的长度len,得到循环的终止条件,在循环中,判断当前字符下标是否为奇数,若为奇数则将上一个字符加上当前字符的值重新赋值给当前字符的位置。下标处为小写英文字母,

2024-04-10 21:41:50 627 1

原创 LeetCode——比较含退格的字符串&&二分查找

首先设置数组最左边元素下标为left,最右边下标元素为right,当最左边下标小于等于最右边下标时进入循环,找出当前left和right的中间值mid,判断数组下标为mid的元素与目标元素是否相等,相等则返回mid,小于则将mid+1赋值给left,改变查找范围的左边界,大于则将mid-1的值赋值给right,改变查找的右边界,继续进行查找。从数组中第一个元素开始逐个判断,若与目标值相等则直接返回当前元素的数组下标,当数组循环完毕跳出循环时,说明数组中无目标元素,返回-1.s 和 t 都会变成 "ac"。

2024-04-09 21:52:33 781 1

原创 LeetCode——找出字符串中第一个匹配的下标&&搜索插入位置

给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从 0 开始)。如果needle不是haystack的一部分,则返回-1。0"sad" 在下标 0 和 6 处匹配。第一个匹配项的下标是 0 ,所以返回 0。-1"leeto" 没有在 "leetcode" 中出现,所以返回 -1。needle。

2024-04-08 20:10:12 406

原创 LeetCode——删除有序数组中的重复项&&移除元素

运用双指针的思想,创建p,q指针,令p指针指向数组第一个元素,q指针指向数组第二个元素,当p指针指向的元素与q指针指向的元素不相等时,在内循环中,将q指针指向的元素赋值给p指针后面的元素,接着将p指针向后移动一位,出了内循环后将q指针向后移动一位。首先创建一个整形变量x,并赋值0,在循环中判断当前数组中的元素是否与val相等,若不相等则让x的当前位置(nums[x])赋值数组中此刻判断的元素(nums[i]),然后移动数组当前元素,若不相等也移动数组当前元素。你不需要考虑数组中超出新长度后面的元素。

2024-04-07 23:33:35 1573

原创 移动应用开发实验室第三次纳新面试题分析

给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。s = "()"truetrues = "(]"false'()[]{}'1.建立哈希表2.利用栈的算法思想1.建立哈希表,实现当输入右括号时返回对应的左括号。2.判断传入的数组长度是否为奇数,如果为奇数则直接返回false.

2024-04-07 19:02:35 1416

原创 LeetCode——反转链表&&相交链表

给你单链表的头节点head,请你反转链表,并返回反转后的链表。示例 1:示例 2:[2,1]示例 3:head = [][]链表中节点的数目范围是[0, 5000]给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null。图示两个链表在节点 c1 开始相交:题目数据 保证 整个链式结构中不存在环。注意,函数返回结果后,链表必须 保持其原始结构。

2024-04-06 19:39:38 1817 1

原创 LeetCode——环形链表&&对链表进行插入排序

3.开始遍历时将第一个数据p当作已经排序好的数据,从第二个数据q进行判断,当p结点中的数据小于q结点中的数据时,p,q都向后移动一位,开始下一次判断。(插入排序的特点),也就是q与m->next结点中的数据进行比较,若m->next中数据大于q中 的数据,则将q结点插入到m->next结点之前,1.分析题目,可以想到,如果当前链表为环形链表时,快慢指针必定相遇,此时,快慢指针所指向的结点相等(这也是我们循环终止的条件)。2.首先,我们需判断头节点以及头节点的下一节点是否为空,否则直接定义快指针将编译出错。

2024-04-05 22:21:03 352 1

原创 LeetCode——回文数&&

以便进行下一次计算。5.最后返回最大水容量s.

2024-04-04 22:10:19 329 1

原创 LeetCode——罗马数字转换整数&&

对a[0],a[1]进行初始化1,并对1进特判。从数组a[2]开始就可以利用循环对前两个数字相加得出结果了。首先看到这道题我思考的是如何将罗马数字用阿拉伯数字表示,然后我运用switch.case的方式,使用了for循环对每个字母进行判断并相加,并且思考了4,9,400,900等特殊数字的输出,发现罗马数字的大小是从左到右每个字母所表示的数字加起来的,在无特殊数字(4,9,40,90)的情况下,每个字母所表示的数字都是左边的大于右边的,当当前数字大于下一位数字时,对当前数字相加,小于时则相减。

2024-04-03 23:57:33 217

原创 洛谷——P1217回文质数

在主函数中,先判断第一个输入的数是否为奇数,因为偶数绝对不会是质数(2除外),如果不是就加1,再由于回文数的数量少于质数的数量,所以首先判断是否为回文数,再判断是否为质数。在huiwen函数建立一个整形t,t为原数字n反转后的数字,反转完成后判断t和原数字n是否相等,相等则为回文数,返回1,否则返回0。在本题中,首先写两个判断是否为质数和是否为回文数的函数。

2024-04-02 22:31:57 150

原创 【无标题】洛谷——p1211选举学生会

在本题中,我创建了两个数组a[m]和b[n+1](因为n名候选人的编号是从1开始,数组下标第一位是0,所以数组b中有n+1个元素,在完成对数据基本的输入后,首先对数组b进行初始化0,以便接下来运用桶排序的思想对每位候选人的票数进行统计。接下来对所有票数(m)进行遍历(桶排序思想)最后对n个候选人的票数进行输出。

2024-04-02 21:53:50 189

空空如也

空空如也

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

TA关注的人

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