- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 LeetCode 83. 删除排序链表中的重复元素
题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3思路方法 1新建一个链表 newhead,第一个节点的值是 head 的值。用两个节点 p 与 qp 用来循...
2018-08-31 20:46:17 113
原创 LeetCode 232. 用栈实现队列
题目描述使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。思路创建两个栈 s1, s2入队将元素放入 s1 中出队若 s2 为空,将 s1 的元素 放入 s2 中, 此时 s2 的栈顶就是队首元素,s2 栈顶出栈。若 ...
2018-08-31 20:23:34 502
原创 LeetCode 18. 4Sum
题目描述Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.Note: The soluti...
2018-08-31 20:04:24 106
原创 LeetCode 153. Find Minimum in Rotated Sorted Array
题目描述Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).Find the minimum element.You may assume no du...
2018-08-31 20:01:56 147
原创 LeetCode 84. Largest Rectangle in Histogram
题目描述Given n non-negative integers representing the histogram’s bar height where the width of each bar is 1, find the area of largest rectangle in the histogram.Above is a histogram where width of ...
2018-08-31 20:00:48 151
原创 LeetCode 74. Search a 2D Matrix
题目描述Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:Integers in each row are sorted from left to right. The first integer of ea...
2018-08-31 19:59:33 192
原创 LeetCode 225. 用队列实现栈
题目描述使用队列实现栈的下列操作:push(x) – 元素 x 入栈pop() – 移除栈顶元素top() – 获取栈顶元素empty() – 返回栈是否为空思路创建两个队列 q1,q2入栈将元素 x 直接放入 q1 队列中。出栈也就是把 q1 的队尾元素出队列,由于队列只能从队头出队,因此先把 q1 中除了队尾元素的其他值存到 q2 中再把队尾元素......
2018-08-31 19:46:57 1139
原创 LeetCode 21. 合并两个有序链表
题目描述将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4思路新建一个链表,将 l1,l2 中的值,相互比较,新的链表指针指向小的那个节点。当其中一个为空,另一个不为空的时候,直接指向那...
2018-08-29 08:43:25 157
原创 LeetCode 155. 最小栈
题目描述设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack....
2018-08-29 08:42:30 449
原创 LeetCode 20. 有效的括号
题目描述给定一个只包括 ‘(‘,’)’,’{‘,’}’,’[‘,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: true示例 3:输入: "(]"输出: f...
2018-08-29 08:41:28 196
原创 LeetCode 206. 反转链表
题目描述反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL思路使用三个指针遍历单链表,对每一个链接点的指针进行反转。p 和 q 指针进行反向,用 r 记录下一个节点,然后从前往后一直进行。原来的 head 变为尾指针,要令 head 的 ...
2018-08-21 11:00:32 156
原创 LeetCode 237. 删除链表中的节点
题目描述请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.思路给我们的只有待删除的节点,不能遍历。比如 1->3-&am
2018-08-21 10:28:21 89
原创 LeetCode 189. 轮转数组 题解
题目描述给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]思路第一种方法将后 k 个.........
2018-08-14 15:38:09 146
鸟哥的linux私房菜
2017-10-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人