牛客图书馆 > 读书笔记
  • 通用辅助函数

    通用辅助函数 检查参数 public void checkArguments(String string) { if (string == null) { throw new RuntimeException("Null ...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:17:14
  • 面试题【1-2】编程语言

    面试题1:赋值运算符函数 题目:如下为类型CMyString的声明,请为该类型添加赋值运算符函数 class CMyString { public: CMyString(char* pData = nullptr); CMyString(c...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:18:58
  • 面试题【3-9】数据结构

    面试题3:数组中重复的数字 题目一:长度为n的数组里的数字在0到n-1的范围 题目一:在一个长度为n的数组里的所有数字都在0到n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。例如,...
    下一次什么时候可以修改昵称 编辑于 2020-11-16 20:22:49
  • 面试题【10-15】算法和数据操作

    面试题10:斐波那契数列 题目一:斐波那契数列 题目一:写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项。斐波那契数列的定义如下: f(x) = \begin{cases} 0 & n=0 \\ 1 & n=1 \\ ...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:23:46
  • 面试题【16-21】代码的完整性

    面试题16:数值的整数次方 题目:实现函数double Power(double base, int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。 算法:时间复杂度为O(logN)的快速乘方 测试:力...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:24:34
  • 面试题【22-26】代码的鲁棒性

    面试题22:链表中倒数第k个结点 题目:输入一个链表,输出该链表中倒数第k个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点开始它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个结点是值...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:25:38
  • 面试题【27-29】画图让抽象问题形象化

    面试题27:二叉树的镜像 题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。 public TreeNode mirrorTree(TreeNode root) { if (root == null || (root.left == nul...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:26:14
  • 面试题【30-34】举例让抽象问题具体化

    面试题30:包含min函数的栈 题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min、push及pop的时间复杂度都是O(1)。 算法: 两个栈: 主栈照常出栈入栈 最小栈每次入栈小于等于栈顶的元素,出栈照常...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:26:52
  • 4/17剑指offer

    1.把数字翻译成字符串0-25分别表示a-z,给一个数字看有几种翻译方法,例如12258可以翻译为bccfi,bwfi,bczi,mcfi,mzi.思路:可以想到利用递归解决问题,但递归可能会出现重复计算的问题,为了避免重复计算,我们从右到左进行计算不同翻译的...
    bloodfire 编辑于 2020-04-17 23:48:57
  • 面试题【35-38】分解让复杂问题简单化

    面试题35:复杂链表的复制 题目:请实现函数ComplexListNode* Clone(ComplexListNode* pHead),复制一个复杂链表。在复杂链表中,每个结点除了有一个m_pNext指针指向下一个结点外,还有一个m_pSibling 指向...
    下一次什么时候可以修改昵称 编辑于 2020-11-06 15:29:33