zoukankan      html  css  js  c++  java
  • 《剑指offer》读书记录三

    第四章 解决面试题的思路

    4.1 面试官谈面试思路

    • 做事前明白自己要做的事情是什么,该怎么做
    • 讲具体的问题分析过程,有些分析需要证明
    • 在写代码前解释清楚自己的思路,没想清楚最好不要动手。可以采用举例子,画图等方式解释清楚问题和解决问题的思路

    4.2 画图让抽象问题形象化

      面试题19:二叉树的镜像,完成一个函数,输入一个二叉树,该函数输出它的镜像。

      • 思路:先序遍历,非叶子结点左右子树互换,递归处理。
      • 测试用例:功能测试(普通二叉树,所有二叉树只有左子树或右子树,只有一个节点的二叉树),特殊输入测试(二叉树根结点为null)

      面试题20:顺时针打印矩阵,输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。

      • 思路:矩阵是一圈一圈的被打印出的,所有首先应该确定社么时候停止打印一圈数字,其次编写代码打印出每一圈的数字,此时需要注意边界条件
      • 测试用例:多行多列,只有一列,只有一列,只有一行一列。

    4.3 举例让抽象问题具体化

      面试题21:包含min函数的栈,定义栈的数据结构,在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min,push和pop的时间复杂度都是O(1)。

      面试题22:

  • 相关阅读:
    CSS------制作一个带+-的input框
    rest简介
    flask之flask-login登陆验证(一)
    Python之异常设计(一)
    flask之flask-sqlalchemy(一)
    flask之wtforms 表单验证(一)
    三 Django模型层之Meta
    二 Djano模型层之模型字段选项
    一 Django模型层简介
    Django之路由、模板和模型系统 (转载)
  • 原文地址:https://www.cnblogs.com/sherPur/p/4595027.html
Copyright © 2011-2022 走看看