- 博客(25)
- 收藏
- 关注
原创 [剑指Offer]从上往下打印二叉树
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-print-from-top-to-bottom-binary-tree.html 作者: Suixin题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。解题思路二叉树的层次遍历,使用队列来实现。见二叉树的七种遍历方法。代码P...
2019-03-05 22:32:56 116
原创 [剑指Offer]栈的压入、弹出序列
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-is-pop-order.html 作者: Suixin题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,...
2019-03-05 17:29:01 127
原创 [剑指Offer]包含min函数的栈
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-min-stack.html 作者: Suixin题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。解题思路使用一个辅助栈,用来存储当前栈中的最小值,辅助栈中元素数量和原始栈一样多。...
2019-03-05 17:27:53 150
原创 Python遍历列表时删除元素
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/remove-for-list.html 作者: SuixinPython的for循环可以遍历一个列表,但若需要同时将符合条件的元素删除时,则会出错。出错s = [1, 2, 3, 4, 1, 1]s1 = sfor i in s1: if i == 1:...
2019-03-05 17:26:54 9622
原创 [剑指Offer]顺时针打印矩阵
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-print-matrix.html 作者: Suixin题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次...
2019-03-05 17:25:24 162
原创 [剑指Offer]二叉树的镜像
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-binary-tree-mirror.html 作者: Suixin题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:代码Python(2.7.3)# -*- coding:utf-8 -*-# class TreeN...
2019-03-05 17:23:21 123
原创 [剑指Offer]树的子结构
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-has-subtree.html 作者: Suixin题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)解题思路创建一个新的IsSubtree函数用来递归调用。如果根节点相同,就递归调用该函数,...
2019-03-04 21:22:17 106
原创 [剑指Offer]合并两个排序的链表
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-merge-linked-list.html 作者: Suixin题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。解题思路生成一个新的结点,将两个链表的结点依次链在后面。比较时,使用两个指针...
2019-03-04 21:21:08 216
原创 [剑指Offer]调整数组顺序使奇数位于偶数前面
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-reorder-array.html 作者: Suixin题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。代码Py...
2019-03-04 21:20:07 123
原创 [剑指Offer]链表中倒数第k个结点
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-linked-list-kth-node-to-tail.html 作者: Suixin题目描述输入一个链表,输出该链表中倒数第k个结点。解题思路循环将链表的所有结点存下来,对于有效的k直接取出对应结点即可。代码Python(2.7.3)...
2019-03-04 21:18:50 108
原创 [剑指Offer]二进制中1的个数
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-bin-num1.html 作者: Suixin题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。解题思路问题的关键点在于对于正数,如何得到它的二进制表示;对于负数,如何得到它的补码。负数在计算机中的二进制表示(原码、...
2019-03-04 13:13:15 121
原创 [剑指Offer]数值的整数次方
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-int-power.html 作者: Suixin题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。解题思路使用递归的方法,将整数次幂除2,底数变为原来的平方。不能整除的向下...
2019-03-03 21:29:27 151
原创 [剑指Offer]矩形覆盖
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-rectangle-cover.html 作者: Suixin题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?解题思路本质上,覆盖的方法数为斐波那契数列。...
2019-03-02 17:46:51 138
原创 [剑指Offer]变态跳台阶
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-jump-floor-pro.html 作者: Suixin题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解题思路递归法。和跳台阶的思路一样,但是如果台阶数较多的话浪费...
2019-03-02 17:07:51 124
原创 [剑指Offer]跳台阶
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-jump-floor.html 作者: Suixin题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。解题思路本质上,跳台阶的跳法是斐波那契数列。假设有8级台阶,那么...
2019-03-02 17:05:37 107
原创 [剑指Offer]斐波那契数列
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-fibonacci-sequence.html 作者: Suixin斐波那契数列a0=0a1=a2=1an=an−1+an−2a_0=0\\a_1=a_2=1\\a_n=a_{n-1}+a_{n-2}a0=0a1=a2=1an=an−...
2019-03-02 17:04:18 140
原创 [剑指Offer]旋转数组的最小数字
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-min-num-in-rotate-array.html 作者: Suixin题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为...
2019-03-02 17:02:15 738
原创 [剑指Offer]重建二叉树
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-reconstruct-binary-tree.html 作者: Suixin题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6...
2019-03-01 22:17:17 96
原创 [剑指Offer]用两个栈实现队列
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-queue-from-two-stacks.html 作者: Suixin题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解题思路可以使用两个栈来存储队列,一个stack1用来正序存储该队列(这个栈...
2019-03-01 21:23:51 104
原创 [剑指Offer]二叉树的深度
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/03/target-offer-binary-tree-depth.html 作者: Suixin题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。解题思路在二叉树Python实现中已经写过,这里...
2019-03-01 16:39:09 88
原创 二叉树基础知识+Python实现
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/02/binary-tree.html 作者: Suixin基础知识树**树(Tree)**是一种非线性结构,用来模拟具有树状结构性质的数据集合。它是由n(n>0)n(n>0)n(n>0)个有限结点组成一个具有层次关系的集合。树是递归结构,在...
2019-03-01 14:14:17 858 2
原创 在服务器部署Jupyter Notebook
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/02/jupyter-notebook.html 作者: SuixinJupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。它的核心在于展示与快速迭代。安装一般通过两种方式来安装Jupyter Not...
2019-03-01 14:13:45 1423
原创 广义表的一些概念
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/02/generalized-list.html 作者: Suixin基本概念广义表(Lists,又称列表)是线性表的推广。广义表是n(n⩾0)n(n\geqslant 0)n(n⩾0)个元素a1,a2,a3,…,ana_1,a_2,a_3,…,a_na1,a2,a3,…...
2019-03-01 14:11:31 1738
原创 2017校招真题--小米--「电话号码分身」
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/02/recruit-telephone-number.html 作者: Suixin题目描述继MIUI8推出手机分身功能之后,MIUI9计划推出一个电话号码分身的功能:首先将电话号码中的每个数字加上8取个位,然后使用对应的大写字母代替 (“ZERO”, “ONE”, “TWO...
2019-03-01 14:11:03 261
原创 队列的基础知识+Python实现
本文首发于我的个人博客Suixin’s Blog原文: https://suixinblog.cn/2019/02/queue.html 作者: Suixin队列队列(Queue)也是一种运算受限的线性表。它只允许在表的一端进行插入,而在另一端进行删除。允许删除的一端称为队头(front),允许插入的一端称为队尾(rear)。先进先出(FIFO)。循环队列为充分利用向量空间,克服"...
2019-03-01 14:10:16 250
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人