Fork me on GitHub
晴宝

吃饱好减肥


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于

leetcode之232. 用栈实现队列

发表于 2019-04-16 | 分类于 leetcode
字数统计 313 字 | 阅读时长 1 分钟

题目描述:

使用栈实现队列的下列操作:

  • push(x) – 将一个元素放入队列的尾部。
  • pop() – 从队列首部移除元素。
  • peek() – 返回队列首部的元素。
  • empty() – 返回队列是否为空。

示例:

1
2
3
4
5
6
7
8
> MyQueue queue = new MyQueue();
>
> queue.push(1);
> queue.push(2);
> queue.peek(); // 返回 1
> queue.pop(); // 返回 1
> queue.empty(); // 返回 false
>

说明:

  • 你只能使用标准的栈操作 – 也就是只有 push to top, peek/pop from top, size, 和 is empty 操作是合法的。
  • 你所使用的语言也许不支持栈。你可以使用 list 或者 deque(双端队列)来模拟一个栈,只要是标准的栈操作即可。
  • 假设所有操作都是有效的 (例如,一个空的队列不会调用 pop 或者 peek 操作)。
阅读全文 »

leetcode之231. 2的幂

发表于 2019-04-16 | 分类于 leetcode
字数统计 209 字 | 阅读时长 1 分钟

题目描述:

给定一个整数,编写一个函数来判断它是否是 2 的幂次方。

示例 1:

1
2
3
4
> 输入: 1
> 输出: true
> 解释: 20 = 1
>

示例 2:

1
2
3
4
> 输入: 16
> 输出: true
> 解释: 24 = 16
>

示例 3:

1
2
3
> 输入: 218
> 输出: false
>
阅读全文 »

leetcode之226. 翻转二叉树

发表于 2019-04-16 | 分类于 leetcode
字数统计 313 字 | 阅读时长 1 分钟

题目描述:

翻转一棵二叉树。

示例:

输入:

1
2
3
4
5
6
>      4
> / \
> 2 7
> / \ / \
> 1 3 6 9
>

输出:

1
2
3
4
5
6
>      4
> / \
> 7 2
> / \ / \
> 9 6 3 1
>

备注:
这个问题是受到 Max Howell 的 原问题 启发的 :

谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。

阅读全文 »

leetcode之225. 用队列实现栈

发表于 2019-04-16 | 分类于 leetcode
字数统计 425 字 | 阅读时长 2 分钟

题目描述:

使用队列实现栈的下列操作:

  • push(x) – 元素 x 入栈
  • pop() – 移除栈顶元素
  • top() – 获取栈顶元素
  • empty() – 返回栈是否为空

注意:

  • 你只能使用队列的基本操作– 也就是 push to back, peek/pop from front, size, 和 is empty 这些操作是合法的。
  • 你所使用的语言也许不支持队列。 你可以使用 list 或者 deque(双端队列)来模拟一个队列 , 只要是标准的队列操作即可。
  • 你可以假设所有操作都是有效的(例如, 对一个空的栈不会调用 pop 或者 top 操作)。
阅读全文 »

leetcode之219. 存在重复元素 II

发表于 2019-04-16 | 分类于 leetcode
字数统计 205 字 | 阅读时长 1 分钟

题目描述:

给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的绝对值最大为 k。

示例 1:

1
2
3
> 输入: nums = [1,2,3,1], k = 3
> 输出: true
>

示例 2:

1
2
3
> 输入: nums = [1,0,1,1], k = 1
> 输出: true
>

示例 3:

1
2
3
> 输入: nums = [1,2,3,1,2,3], k = 2
> 输出: false
>
阅读全文 »

leetcode之217. 存在重复元素

发表于 2019-04-16 | 分类于 leetcode
字数统计 191 字 | 阅读时长 1 分钟

题目描述:

给定一个整数数组,判断是否存在重复元素。

如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。

示例 1:

1
2
3
> 输入: [1,2,3,1]
> 输出: true
>

示例 2:

1
2
3
> 输入: [1,2,3,4]
> 输出: false
>

示例 3:

1
2
3
> 输入: [1,1,1,3,3,4,3,2,4,2]
> 输出: true
>
阅读全文 »

剑指Offer之数组中的逆序对

发表于 2019-04-16 | 分类于 剑指Offer
字数统计 444 字 | 阅读时长 2 分钟

题目描述:

在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007

输入描述:

1
2
> 题目保证输入的数组中没有的相同的数字数据范围:	对于%50的数据,size<=10^4	对于%75的数据,size<=10^5	对于%100的数据,size<=2*10^5
>

示例1

输入

1
2
> 1,2,3,4,5,6,7,0
>

输出

1
2
> 7
>
阅读全文 »

剑指Offer之链表中倒数第k个结点

发表于 2019-04-15 | 分类于 剑指Offer
字数统计 197 字 | 阅读时长 1 分钟

题目描述:

输入一个链表,输出该链表中倒数第k个结点。

阅读全文 »

剑指Offer之删除链表中重复的结点

发表于 2019-04-15 | 分类于 剑指Offer
字数统计 383 字 | 阅读时长 1 分钟

题目描述:

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5

阅读全文 »

剑指Offer之复杂链表的复制

发表于 2019-04-15 | 分类于 剑指Offer
字数统计 649 字 | 阅读时长 3 分钟

题目描述:

输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)

阅读全文 »
1234…16
晴宝宝

晴宝宝

151 日志
10 分类
18 标签
GitHub
© 2017 - 2021 晴宝宝
由 Hexo 强力驱动
主题 - NexT.Muse