leetcode
One_castle
这个作者很懒,什么都没留下…
展开
-
LeetCode 奇偶链表
奇偶链表原题链接:点我传送原题描述:给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1...原创 2019-10-31 19:49:29 · 320 阅读 · 0 评论 -
LeetCode 最小栈
最小栈原题链接:点我传送原题描述:设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。示例:MinStack minStack = new MinStack();minStack.push(-2);min...原创 2019-10-13 21:08:59 · 146 阅读 · 0 评论 -
LeetCode 如何用栈来实现队列
用栈实现队列原题链接:点我传送原题描述:使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。示例:MyQueue queue = new MyQueue();queue.push(1);queue.push(2);queue.peek(); /...原创 2019-10-13 11:59:14 · 201 阅读 · 0 评论 -
Leetcode 设计循环队列
设计循环队列原题链接:点击传送题目描述: 设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。...原创 2019-10-13 10:23:01 · 361 阅读 · 0 评论 -
LeetCode的第1题 two sum
two sum题目如下 :Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not ...原创 2019-04-01 23:41:40 · 125 阅读 · 0 评论 -
LeetCode的第7题Reverse Integer
原题如下:Given a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123Output: 321Example 2:Input: -123Output: -321Example 3:Input: 120Output: 21Note:Assume we are dealing wi...原创 2019-04-02 23:55:21 · 150 阅读 · 0 评论 -
LeetCode的第9题Palindrome Number
原题如下:Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.Example 1:Input: 121Output: trueExample 2:Input: -121Output: falseExpla...原创 2019-04-03 23:58:13 · 215 阅读 · 0 评论 -
LeetCode 判断链表中是否有环
回文链表题目描述:给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。示例 2:输入:head = [1,2], pos = 0...原创 2019-09-23 09:45:27 · 778 阅读 · 0 评论 -
LeetCode 回文链表
回文链表题目描述:请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true题目分析:判断一条链表是否为回文链表1、首先先利用快慢指针找到链表中间节点,慢指针要么指向中间节点、要么指向中间节点的前一个节点(与链表长度的奇偶数有关!)2、找到中间节点后,将链表从中间节点的下一个结点开始的...原创 2019-09-23 15:20:51 · 447 阅读 · 0 评论 -
LeetCode 反转链表
题目描述:反转一个单链表。题目链接:原题链接示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL方法1:头插法题目分析: 这个是一个非常简单的反转一个单链表,最简单最容易想到的方法就是通过循环遍历得到每个元素然后通过头插法重新插入链表中,从而实现链表倒转的目的。代码解释:理解的...原创 2019-09-21 10:59:18 · 241 阅读 · 0 评论 -
LeetCode 删除链表的倒数第N个节点
题目描述:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。题目链接: 原题目链接示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。题目分析:这个题目可以通过双引用(双指针)的方法来进行求解:重新定义两个新的指针,先让...原创 2019-09-21 10:12:29 · 196 阅读 · 0 评论 -
LeetCode 删除链表中的节点
题目描述:请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。原题目链接:题目链接现有一个链表 – head = [4,5,1,9],它可以表示为:示例 1:输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -&...原创 2019-09-20 22:31:03 · 138 阅读 · 0 评论 -
LeetCode 合并两个有序表
题目描述:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。原题链接示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4题目分析:这是一个简单的合并两个有序表达的题目,只需要创建一条新的链表,然后对两条链表进行每个元素比较,将比较小的值连接到新的链表中即可代码解...原创 2019-09-21 12:47:48 · 229 阅读 · 0 评论