对于二叉搜索树,我们规定任一结点的左子树仅包含严格小于该结点的键值,而其右子树包含大于或等于该结点的键值。如果我们交换每个节点的左子树和右子树,得到的树叫做镜像二叉搜索树。 现在我们给出一个整数键值序列,请编写程序判断该序列是否为某棵二叉搜索树或某镜像二叉搜索树的前序遍历序列,如果是,则输出对应二叉 ...
分类:
编程语言 时间:
2019-11-22 01:16:01
阅读次数:
145
总结了前端面试中常见的数据结构基础知识,涉及到时间复杂度,排序算法,哈希冲突问题及解决方法,二叉树等知识点。 ...
分类:
编程语言 时间:
2019-11-21 23:18:51
阅读次数:
175
队列结构 受限的线性结构 之前我们总结了:栈结构 并且已经知道这种 受限的数据结构 对于解决某些 特定的问题 ,会有 特别的效果 这面文章,介绍了另外一个受限的数据结构: 队列 队列的结构: 满足 先进先出 的一种结构 受限之处:只允许在表的前端进行删除操作,表的后端进行插入操作 抽象比喻: 栈就是 ...
分类:
编程语言 时间:
2019-11-21 23:18:22
阅读次数:
152
数据结构与算法 1. 概述 什么是计算机科学? 什么是算法? 评判程序优劣的方法? 时间复杂度: 评判规则: 量化算法执行的操作/执行步骤的数量 最重要的项: 时间复杂度表达式中最有意义的项 例如: 分析算法时间复杂度的步骤: 用常数1取代运行时间中的所有加法常数。 在修改后的运行次数函数中,只保留 ...
分类:
编程语言 时间:
2019-11-21 16:46:50
阅读次数:
58
距离本专题的第一篇文章都快一年了,总共也就写了八篇博客,写的动机仅仅是刷刷题以准备来年的面试,后来觉得写博客太慢了就自己在下面练,坚持了三个月之后也就不了了之。之所以没坚持下来除了自己耐力不够,主要还是纯面试目的以及学习方法不对,思考的不多,看完别人的解法后自己实现完也没有自己的总结和思考,后面遇到 ...
分类:
编程语言 时间:
2019-11-21 16:43:11
阅读次数:
67
什么是数据结构与算法 为什么要学习数据结构与算法: 通常在学习编程语言的时候,似乎没有必要学习这些,我们只是在了解学习一门语言的: 基本语法 高级语法 了解其主流框架 做出界面效果 实现业务逻辑 就可以了 所以,当只是想了解语言的应用层面,数据结构与算法没那么重要, 但是,如果想了解语言的设计层面, ...
分类:
编程语言 时间:
2019-11-21 15:31:54
阅读次数:
111
递归详解-典型递归介绍 http://chenqx.github.io/2014/09/29/Algorithm-Recursive-Programming/ 1.如何理解“递归”?(什么是递归) 去的过程叫“递”,回来的过程叫“归”f(n)=f(n-1)+1 备注:去的过程入栈的过程,回来的过程出 ...
分类:
编程语言 时间:
2019-11-21 13:42:17
阅读次数:
91
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列,的中位数指A?(N?1)/2??的值,即第?个数(A?0??为第1个数)。 输入格式: 输入分三行。第一行给出序列的公共长度N(0<N≤100000),随后每行输入一个序列的信息,即N个非降序排列的整数。数字用空格 ...
分类:
编程语言 时间:
2019-11-17 14:56:52
阅读次数:
100
Java数据结构和算法(八)——递归 目录 1、递归的定义 2、求一个数的阶乘:n! 3、递归的二分查找 4、分治算法 5、汉诺塔问题 5、归并排序 6、消除递归 递归和栈 7、递归的有趣应用 ①、求一个数的乘方 ②、背包问题 ③、组合:选择一支队伍 8、总结 记得小时候经常讲的一个故事:从前有座山 ...
分类:
编程语言 时间:
2019-11-17 10:22:54
阅读次数:
125
判断题 1.假设模式串是abababaab,则KMP模式匹配算法中的next[j] = 0 1 1 2 3 4 5 6 2。 T F 2.某二叉树的后序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无左孩子。 T F 3.无向图中的一条边,在其邻接表存储结构中对应两个弧结点。 T F 4.在含 ...
分类:
编程语言 时间:
2019-11-16 23:49:02
阅读次数:
835