摘要:
"在O(1)时间复杂度删除链表节点" 给定一个单链表中的一个等待被删除的节点(非表头或表尾)。请在在O(1)时间复杂度删除该链表节点。 样例 给定 1 2 3 4,和节点 3,删除 3 之后,链表应该变为 1 2 4。 标签 Cracking The Coding Interview 链表 code 阅读全文
摘要:
"用栈实现队列" 正如标题所述,你需要使用两个栈来实现队列的一些操作。 队列应支持push(element),pop() 和 top(),其中pop是弹出队列中的第一个(最前面的)元素。 pop和top方法都应该返回第一个元素的值。 样例 比如 ,你应该返回1,2和2 挑战 仅使用两个栈来实现它,不 阅读全文
摘要:
"搜索二维矩阵 II" 写出一个高效的算法来搜索m×n矩阵中的值,返回这个值出现的次数。 这个矩阵具有以下特性: 每行中的整数从左到右是排序的。 每一列的整数从上到下是排序的。 在每一行或每一列中没有重复的整数。 样例 考虑下列矩阵: [ & 160;& 160;& 160;& 160; [1, 3 阅读全文
摘要:
"中序遍历和后序遍历树构造二叉树" 根据中序遍历和后序遍历树构造二叉树 注意事项 你可以假设树中不存在相同数值的节点 样例 给出树的中序遍历: [1,2,3] 和后序遍历: [1,3,2] 返回如下的树: & 160;& 160;2 & 160;/& 160;& 160;\ 1& 160;& 160 阅读全文
摘要:
"空格替换" 设计一种方法,将一个字符串中的所有空格替换成 %20 。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。 你的程序还需要返回被替换后的字符串的长度。 注意事项 如果使用 Java 或 Python, 程序中请用字符数组表示字符串。 样例 对于字符串"Mr 阅读全文
摘要:
"二进制中有多少个1" 计算在一个 32 位的整数的二进制表式中有多少个 1. 样例 给定 32 (100000),返回 1 给定 5 (101),返回 2 给定 1023 (111111111),返回 9 挑战 If the integer is n bits with m 1 bits. Can 阅读全文
摘要:
"翻转链表" 翻转一个链表 样例 给出一个链表 1 2 3 null ,这个翻转后的链表为 3 2 1 null 挑战 在原地一次翻转完成 标签 链表 优步 脸书 code / Definition of ListNode class ListNode { public: int val; List 阅读全文
摘要:
"寻找旋转排序数组中的最小值" 假设一个旋转排序的数组其起始位置是未知的(比如0 1 2 4 5 6 7 可能变成是4 5 6 7 0 1 2)。 你需要找到其中最小的元素。 你可以假设数组中不存在重复的元素。 注意事项 You may assume no duplicate exists in t 阅读全文
摘要:
"前序遍历和中序遍历树构造二叉树" 根据前序遍历和中序遍历树构造二叉树. 注意事项 你可以假设树中不存在相同数值的节点 样例 给出中序遍历:[1,2,3]和前序遍历:[2,1,3]. 返回如下的树: & 160;& 160;2 & 160;/& 160;& 160;\ 1& 160;& 160;3 阅读全文
摘要:
"Fizz Buzz 问题" 给你一个整数n. 从 1 到 n 按照下面的规则打印每个数: 如果这个数被3整除,打印fizz. 如果这个数被5整除,打印buzz. 如果这个数能同时被3和5整除,打印fizz buzz. 样例 比如 n = 15, 返回一个字符串数组: [ & 160;& 160;& 阅读全文