上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 58 下一页
摘要: 面试题27:二叉树的镜像。输入一棵二叉树,该函数输出它的镜像。二叉树的节点定义如下: struct BinaryTreeNode{ int m_nValue; BinaryTreeNode *m_pLeft; BinaryTreeNode *m_pRight; }; 依次交换每个节点的两个子树即可: 阅读全文
posted @ 2020-03-01 09:24 epiphanyy 阅读(10) 评论(0) 推荐(0)
摘要: 面试题26:树的子结构。输入两棵二叉树A和B,判断B是不是A的子结构。二叉树节点定义如下: struct BinaryTreeNode{ int m_nValue; BinaryTreeNode *m_pLeft; BinaryTreeNode *m_pRight; }; 我们可以分两步解决这个问题 阅读全文
posted @ 2020-02-29 14:58 epiphanyy 阅读(7) 评论(0) 推荐(0)
摘要: 函数是一个命名了的代码块,我们通过调用函数执行相应代码。函数可以有0个或多个参数,通常会产生一个结果。 一个典型的函数定义包括返回类型、函数名、由0个或多个形参组成的列表和函数体。形参以逗号‘,’隔开,形参列表位于一对圆括号内。 我们通过调用运算符()来执行函数,它作用于一个表达式,该表达式是函数或 阅读全文
posted @ 2020-02-26 23:47 epiphanyy 阅读(22) 评论(0) 推荐(0)
摘要: 鲁棒是英文Robust的音译,有时也翻译成健壮性。鲁棒性指程序能够判断输入是否合乎规范要求,并对不符合要求的输入予以合适的处理。 容错性是鲁棒性的一个重要体现,不鲁棒的软件在发生异常事件时,如用户输入错误的用户名、试图打开的文件不存在或者网络不能连接,会出现不可预见的诡异行为,或者干脆整个软件崩溃。 阅读全文
posted @ 2020-02-25 17:07 epiphanyy 阅读(13) 评论(0) 推荐(0)
摘要: 面试题19:正则表达式匹配。请实现一个函数用来匹配包括’.‘和’*‘的正则表达式。模式中的’.‘表示任意一个字符,而’*'表示它左面的一个字符可以出现任意次(含0次),本题中,匹配是指字符串的所有字符匹配整个模式,即模式中有一种情况与要匹配的串相同则匹配成功。例如,字符串"aaa"与模式"a.a"和 阅读全文
posted @ 2020-02-23 00:04 epiphanyy 阅读(7) 评论(0) 推荐(0)
摘要: 面试题18:删除链表的节点。 (1)在O(1)的时间内删除链表节点。给定单向链表的头指针和一个节点指针,定义一个函数在O(1)时间内删除该节点,链表节点定义如下: struct ListNode { int m_nValue; ListNode *m_pNext; }; 该问题的常规做法是从头节点开 阅读全文
posted @ 2020-02-21 22:59 epiphanyy 阅读(15) 评论(0) 推荐(0)
摘要: 由于精度原因,判断两个小数是否相等不能用==: int main() { double base = 0.1 + 0.2; double b = 0.3; cout << (base == b) << endl; // 输出0 } 以上代码输出0的原因是十进制转换为二进制会损失精度,由于0.1转换为 阅读全文
posted @ 2020-02-19 14:46 epiphanyy 阅读(10) 评论(0) 推荐(0)
摘要: 位运算是把数字用二进制表示后,对每一位上的0或者1的运算。 面试题15:二进制中1的个数。请实现一个函数,输入一个整数,输出该数二进制表示(即补码表示)中1的个数。例如,把9表示成二进制是1001,有2位是1。因此,如果输入9,则函数输出2。 很快我们得到一个思路,先判断该数二进制表示中右边一位是不 阅读全文
posted @ 2020-02-18 14:25 epiphanyy 阅读(7) 评论(0) 推荐(0)
摘要: 如果面试题是求一个问题的最优解(通常是求最大值或最小值),而且 1.该问题能分解成若干个子问题。 2.子问题也存在最优解,如果把小问题的最优解组合起来能够得到整个问题的最优解,即整体问题的最优解依赖于各个子问题的最优解。 3.这些小问题之间有重叠的问题,即在分解大问题的过程中反复出现相同子问题。 就 阅读全文
posted @ 2020-02-17 22:20 epiphanyy 阅读(11) 评论(0) 推荐(0)
摘要: 回溯法可以看成蛮力法的升级版,它从解决问题的每一步的所有可能选项里系统地选择一个可行的解决方案。回溯法适合由多个步骤组成的问题,并且每个步骤有多个选项。 用回溯法解决的问题的所有选项可以用树状结构形象地表示,在某一步有n个可能的选项,那么该步骤可以看做树状结构中的一个节点,每个选项看成树中节点连接线 阅读全文
posted @ 2020-02-16 16:08 epiphanyy 阅读(10) 评论(0) 推荐(0)
上一页 1 ··· 42 43 44 45 46 47 48 49 50 ··· 58 下一页