Leetcode
文章平均质量分 58
Leetcode一些常见的编程题
吐泡泡_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
K个一组链表翻转
很好解决让new一个指针ans,定义一个指针tmp=ans指向他,那怎么让反转后的最后一个节点1指向下一个节点?反转后的状态直接让tmp指向他,也就是 ans的next 指向 prev 所在的位置并让 tmp进行指向(ans后续返回答案要用)。总共5个节点,5/2,总共反转2次,结束让最后的指针指向剩余的节点。然后让tmp指向之前标记的cur也就是pos,也就是反转之前的头部。只要最开始记录1和2,2个节点,并让1指向空,在根据2得到3节点。结束,让tmp指向没反转的节点,节点就是cur指向的节点。原创 2025-05-21 23:16:21 · 384 阅读 · 0 评论 -
3.无重复字符的最长子串
答案是不需要,因为只有j指向的元素是重复的,这个重复的元素就在i和j之间(包括i和j),那是不是只要让i进行移动到与j重复的元素停下来,然后删掉判断是不是还有与j重复的,如果有就继续往后走,如果没有就让j继续往后遍历,最坏的情况就是与j刚好相遇,由此而知这个思想是基于双指针的一个优化,就是滑动窗口。我们第一个能想到的解法就是暴力解法:固定一个下标i,j往后遍历记录字母出现的次数,如果有重复的则记录结果,j则回到i位置i++,j=i,在重新遍历记录结果,即:双指针,但这个解法时间复杂度为O(n^2)原创 2024-11-08 21:26:39 · 406 阅读 · 0 评论 -
2658(网格中鱼的最大数目)
本体题意:找一段非0相邻起来的下标,求这些非0相邻起来的下标和的最大值比如上图,最大的非0相邻起来的下标和为13。原创 2024-10-30 23:27:18 · 486 阅读 · 0 评论 -
Leetcode(215,数组中的第K大元素)
基于普通版快速排序算法的优化后的算法原创 2024-10-25 12:39:44 · 422 阅读 · 0 评论 -
leetcode(栈实现队列,循环队列)
还有一种方法就是返回 ((back-1) + (k+1)) % (k+1) == ((back) + (k)) % (k+1)为了防止插入无效(数组遵循循环) 插入成功后 (back+1)%(k+1)当back为0时就要而外判断 即:当 k == 0 时,返回a[k]判断为满 即 (back+1) % (k+1) == front;先判断是否为空,然后直接获取 a [front]和插入一样,也要进行 %(k+1) 操作。先定义一个只入的栈,在定义一个只出的栈。删除队首元素先判断是否为空,在删除。原创 2023-11-22 22:34:13 · 80 阅读 · 1 评论 -
栈与队列及实现
FIFO(First In First Out) 入队列:进行插入操作的一端称为 队尾 出队列:进行删除操作的一端称为 队头。栈中的数据元素遵守后进先出 LIFO ( Last In First Out )的原则。栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出。压栈:栈的插入操作叫做进栈 / 压栈 / 入栈, 入数据在栈顶。出栈:栈的删除操作叫做出栈。原创 2023-11-15 19:39:34 · 73 阅读 · 1 评论
分享