菜鸟笔记
提升您的技术认知

算法笔记-ag真人游戏

图文详解二叉树

菜鸟阅读 : 1544

前言 二叉树是一种特殊的树结构,应用广泛 下面,我将详细介绍 二叉树的相关知识,希望你们会喜欢。 目录 示意图 1. 简介 示意图 2. 性质 示意图 3. 存储结构 二叉树的存储结构包括:顺序存储结构 & 链式存储结构 示意图 注...

四大查找算法

菜鸟阅读 : 935

在java中,常用的查找有四种 顺序(线性)查找 二分查找折半查找 插值查找 斐波那契查找 目录 1. 线性查找 2. 二分查找 3. 插值查找 4. 斐波那契查找 1. 线性查找 线性查找是逐一比对,发现有相同值,就返回下标 public...

八大排序算法

菜鸟阅读 : 1282

目录 1. 交换排序——冒泡排序 2. 交换排序——快速排序 3. 选择排序——简单选择排序 4. 选择排序——堆排序 什么是堆 堆排序基本思想 步骤图解 代码实现 5. 插入排序——简单插入排序 6. 插入排序——希尔排序 7. 归并排序...

面试题37. 序列化二叉树

菜鸟阅读 : 1081

观察题目示例,序列化的字符串实际上是二叉树的 “层序遍历”(bfs)结果,本文也采用层序遍历。 通常使用的前序、中序、后序、层序遍历记录二叉树的信息不完整,即可能对应着多种二叉树结果。 题目要求的 “序列化” 和 “反序列化” 是 可逆 操...

二叉树遍历-递归迭代整理

菜鸟阅读 : 1168

前序遍历: 节点-左子树-右子树(中-左-右) 中序遍历: 左子树-节点-右子树(左-中-右) 后续遍历: 左子树-右子树-节点(左-右-中) 数据结构 // definition for a binary tree node. struc...

前缀树c

菜鸟阅读 : 1299

前缀树 特点就是利用空间换时间,通过利用前缀存储的方法达到高效的查找效率。 3个基本性质: 根节点不包含字符,除根节点外每一个节点都只包含一个字符。 从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串。 每个节点的所有子节点...

第k大数字-快排,大根堆实现

菜鸟阅读 : 1046

快排思路实现 有一个整数数组,请你根据快速排序的思路,找出数组中第k大的数。 给定一个整数数组a,同时给定它的大小n和要找的k(k在1到n之间),请返回第k大的数,保证答案存在。 class finder { public: int fin...

蓄水池抽样算法 (reservoir sampling algorithm)

菜鸟阅读 : 3136

蓄水池抽样算法简介 蓄水池抽样算法是随机算法的一种,用来从n个样本中随机选择k个样本,其中n非常大(以至于n个样本不能同时放入内存)或者n是一个未知数。其时间复杂度为o(n),包含下列步骤 (假设有一维数组 s, 长度未知,需要从中随机选择...

寻找多数元素

菜鸟阅读 : 1247

令a[1...n]是一个整数数列,a中的整数a如果出现的次数多于[n/2],那么称a为多数元素。 有一个比较漂亮的求解法,我们用归纳法导出这个算法,这个算法的实质是基于下面的观察结论。 观察结论:在原序列中去除两个不同的元素后,那么原序列中...

无序数组中找第k大的数

菜鸟阅读 : 906

类快排算法 leetcode215 由于只要求找出第k大的数,没必要将数组中所有值都排序。 快排中的partition算法,返回key在数组中的位置的cnt(相对于left的偏移量),如果cnt正好等于k,那么问题则得到解决;如果cnt小于...

网站地图