
剑指offer
写代码的阿呆
每天保持进步就是最大的进步!
展开
-
剑指offer | 4 二维数组中的查找
剑指offer刷题1 前言2 题目3 思路及解答1 前言为了准备算法面试,开始刷题,剑指offer走起。计划10天内刷完!加油!(头条秋招提前批面试之前)2 题目在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。3 思路及解答思路1:暴力搜...原创 2019-07-03 11:14:07 · 223 阅读 · 0 评论 -
剑指offer | 5 替换空格 + 6 从尾到头打印链表
替换空格+从尾到头打印链表1 题目1-替换空格2 思路及解答3 题目2-从尾到头打印链表4 思路及解答21 题目1-替换空格请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。2 思路及解答思路1:根据空格进行split 然后一个for循环实现字符串拼接,注意最后一个单独拿出来...原创 2019-07-03 19:53:29 · 195 阅读 · 0 评论 -
剑指offer | 9 用两个栈实现队列
用两个栈实现队列1 题目2 思路及解析1 题目用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。2 思路及解析思路1:一个为入栈 一个为出栈代码:感觉逻辑没问题的 但是没有调试成功 还不知道为啥# -*- coding:utf-8 -*-class Solution: # 先初始化 def __init__(self): ...原创 2019-07-04 01:45:33 · 175 阅读 · 0 评论 -
剑指offer | 11 斐波那契数列
斐波那契数列1 题目2 思路及代码3 拓展3.1 拓展1 跳台阶3.2 题目拓展2:变态跳台阶参考[待补充]1 题目大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=392 思路及代码思路1: 先定义一个空list,直接用循环往里面append!然后取数!代码:# -*- coding:utf-8 -*-cl...原创 2019-07-04 21:32:39 · 251 阅读 · 0 评论 -
剑指offer | 5题
题1:重建二叉树题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:重建二叉树返回的结果是依次打印出二叉树的根节点,肯定要用到递归的思想先根据前序list找到根节点以及其索引然后在前序和...原创 2019-07-25 12:05:58 · 321 阅读 · 0 评论 -
剑指offer | 链表问题汇总
链表问题汇总1 前言2 题目题1 链表中倒数第k个结点1 前言2 题目题1 链表中倒数第k个结点输入一个链表,输出该链表中倒数第k个结点。思路:如果输出链表正向的第k个结点会吗?应该会的!那么再得到长度,一减,就ok了啊!但是上面思路太麻烦,有一个非常牛逼的思路!牛逼思路:我们可以定义两个指针。第一个指针从链表的头指针开始遍历向前走k-1,第二个指针保持不动;从第k步开...原创 2019-08-02 14:58:32 · 812 阅读 · 0 评论 -
剑指offer | 数组问题汇总
数组问题汇总1 前言2 题目2.1 调整数组顺序使奇数位于偶数前面2.1.1 思路12.1.2 代码12.1.3 思路22.1.4 代码22.2 数组中出现次数超过一半的数字2.2.1 思路12.2.2 代码12.2.3 思路22.2.4 代码21 前言2 题目2.1 调整数组顺序使奇数位于偶数前面输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,...原创 2019-09-07 02:15:16 · 566 阅读 · 0 评论