什么是递归深度 递归深度就是递归函数在内存中,同时存在的最大次数。 例如下面这段求阶乘的代码: Java: Python: C++: 当n=100时,递归深度就是100。一般来说,我们更关心递归深度的数量级,在该阶乘函数中递归深度是O(n)O(n)O(n),而在二分查找中,递归深度是O(log(n) ...
分类:
其他好文 时间:
2019-11-03 20:07:13
阅读次数:
191
学号 2019 2020 20182321 《数据结构与面向对象程序设计》第八周学习总结 教材学习内容总结 查找中最简单的查找就是线性查找了,也就是对一列元素一个一个的向下寻找,找到了再返回,线性查找中其实可以利用哨兵法来简化线性查找的过程。 简化查找的方法有二分查找,二分查找可以极大的减小算法的时 ...
分类:
其他好文 时间:
2019-11-03 18:22:06
阅读次数:
51
二叉排序树 引入 基本性质: 二叉排序树(又叫二叉搜索、查找树) 1. 若左子树不空,则左子树上所有结点的值均 小于 它的根结点的值; 2. 若右子树不空,则右子树上所有结点的值均 大于 它的根结点的值; 3. 左、右子树也分别为二叉排序树。 4. 不允许有键值相同结点。 二分查找与二叉排序树 ? ...
分类:
编程语言 时间:
2019-11-03 01:05:13
阅读次数:
65
2019/11/02 3、分块查找 (又称 索引顺序查找)[性能介于 顺序查找 和 折半查找之间] 索引表 最大关键字 22 48 86 起始地址 1 7 13 22 12 13 8 9 20 33 42 44 38 24 48 60 58 74 49 86 53 表及其索引表 块的查找 既可以顺序 ...
分类:
编程语言 时间:
2019-11-02 12:18:41
阅读次数:
95
一、二分查找 必须为有序数组 1.1递归实现 1.2 循环实现 ...
分类:
其他好文 时间:
2019-11-01 20:18:09
阅读次数:
73
二叉树 每个节点最多有两个叶子节点 二叉树的优势 在实际使用时会根据链表和有序数组等数据结构的不同优势进行选择。有序数组的优势在于二分查找,链表的优势在于数据项的插入和数据项的删除。但是在有序数组中插入数据就会很慢,同样在链表中查找数据项效率就会很低。综合以上情况,二叉树可以利用链表和有序数组的优势 ...
分类:
其他好文 时间:
2019-10-30 14:00:08
阅读次数:
64
一.算法概念 评判程序优劣的方法 时间复杂度 双端队列 实现方法: 应用案列:回文检查 三.内存相关概念 计算机的作用 用来存储和运算二进制的数据 计算机如何计算1+2? 将1和2的二进制类型的数据加载到计算机的内存中,然后使用寄存器进行数值的预算。 变量的概念 变量就是某一块内存 引用:变量==》 ...
分类:
编程语言 时间:
2019-10-29 00:01:19
阅读次数:
96
Difficulty:Medium More:【目录】LeetCode Java实现 Description https://leetcode.com/problems/validate-binary-search-tree/ Given a binary tree, determine if it ...
分类:
其他好文 时间:
2019-10-28 10:59:44
阅读次数:
121
50. Pow(x, n) Medium 10082426FavoriteShare 50. Pow(x, n) Medium 10082426FavoriteShare Medium Implement pow(x, n), which calculates x raised to the pow ...
分类:
其他好文 时间:
2019-10-27 22:52:02
阅读次数:
102