随笔分类 -  剑指Offer

算法编程
摘要:一、前言 刷题平台:牛客网 二、题目 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 1、思路 通常树有如下几 阅读全文
posted @ 2019-10-23 22:30 百家齐鸣 阅读(129) 评论(0) 推荐(0)
摘要:一、前言 刷题平台:牛客网 二、题目 输入一个链表,返回一个反序的链表。 1、思路 通常,这种情况下,我们不希望修改原链表的结构。返回一个反序的链表,这就是经典的“后进先出”,我们可以使用栈实现这种顺序。每经过一个结点的时候,把该结点放到一个栈中。当遍历完整个链表后,再从栈顶开始逐个输出结点的值,给 阅读全文
posted @ 2019-10-23 22:24 百家齐鸣 阅读(122) 评论(0) 推荐(0)
摘要:一、前言 刷题平台:牛客网 二、题目 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 1、思路 最简单的方法就是从头到尾遍历,但是时间复杂度为O(n^2)。 本文采用一种时间复杂度为O(n)的 阅读全文
posted @ 2019-10-21 23:27 百家齐鸣 阅读(137) 评论(0) 推荐(0)
摘要:一、前言 刷题平台:牛客网 二、题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 1、思路 首先选取数组中右上角的数字。如果该数字等于要查找的数字,查找过程结束;如果该数字大于 阅读全文
posted @ 2019-10-21 23:22 百家齐鸣 阅读(158) 评论(0) 推荐(0)