第三周

作者: 风之羁绊 | 来源:发表于2019-05-31 21:02 被阅读0次

    第三周题做完了,总结一下。
    acwing35 反转链表
    题目:https://www.acwing.com/problem/content/33/
    老题目了,不讲了,但还是需要好好写,容易写错。
    https://www.acwing.com/problem/content/submission/code_detail/116534/
    acwing36 合并两个排序的链表
    题目:https://www.acwing.com/problem/content/34/
    也是老题目,二路并归
    https://www.acwing.com/problem/content/submission/code_detail/116564/
    acwing37 树的子结构
    树的题目我总是不太会,这道也不例外,在一个树中找存不存在另一颗树,然后我们的思路是判断子树p1是否包含p2,如果不相同的话,找自己的子树是否存在另一棵树。
    判断子树是不是包含关系,如果p2的节点为0,就可以认为是包含了,如果p1为0,而p2不为0,那么就不包含,还要判断节点值是不是相同
    code:https://www.acwing.com/problem/content/submission/code_detail/120970/
    acwing38.二叉树的镜像
    这道题比较简单,用c++写交换指针,直接用swap就可以了,然后递归子树
    https://www.acwing.com/problem/content/submission/code_detail/120980/
    acwing39.对称的二叉树
    要对称,p1的左子树就要和p2的右子树进行比较,递归比较就可以了,注意dfs的条件判断。
    code:https://www.acwing.com/problem/content/submission/code_detail/116140/
    acwing40.顺时针打印矩阵
    也是一道老题,注意这种题目x轴的方向一般是行的数目
    code:https://www.acwing.com/problem/content/submission/code_detail/114615/
    acwing41.包含min函数的栈
    我们需要提供一个栈保存最小值,当值小于等于最小栈的栈顶元素,最小栈push,当退出的元素等于最小栈的栈顶元素,pop
    code:https://www.acwing.com/problem/content/submission/code_detail/120909/
    acwing42.栈的压入、弹出序列
    这道题可以用模拟的方式来做,因为每个值都不相同,把输入序列逐个输入,当弹出序列等于时,就弹出,看最后栈内有没有数
    https://www.acwing.com/problem/content/submission/code_detail/116819/
    acwing43.不分行从上往下打印二叉树
    bfs的题,不讲了
    code:https://www.acwing.com/problem/content/submission/code_detail/116844/
    acwing44分行从上往下打印二叉树
    也是bfs的题,但比上一道需要额外记录一下层次,当遍历到下一层次时就返回上一层次的
    code:https://www.acwing.com/problem/content/submission/code_detail/117635/
    也可以另外用一个新队列,把同一个层次的放在一个队列里,交替使用,逻辑更明确。
    acwing45.之字形打印二叉树
    也是bfs的题,把上面那道题中间保存的数组看情况reverse一下就可以了。
    code:https://www.acwing.com/problem/content/submission/code_detail/117643/

    相关文章

      网友评论

          本文标题:第三周

          本文链接:https://www.haomeiwen.com/subject/gihhtctx.html