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

算法笔记 第8页

二分查找的实现

题目描述 1、定义一个顺序存储结构或者数组 2、主函数已经给出,提交代码不需要提交主函数 3、需要完成未给出的二分查找实现 4、中间处理:二分或折半查找,通过二分查找:理解查找成功的ASL和查找失败的ASL。 5、参考程序给出的输出实现二分...

赞(1)菜鸟菜鸟阅读(2091)

归并排序图文详解

1. 图解两个有序数组归并 在看归并排序时,我们首先要能够归并两个有序数组,换句话说就是合并两个有序数组为一个有序数组。 例如归并以下两个数组 a[5] = {3,5,7,8,10} b[7] = {1,2,4,5,8,11,12,} 主要...

赞(1)菜鸟菜鸟阅读(3073)

动态规划详解

什么是动态规划? 动态规划(英语:Dynamic programming,简称 DP),是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问...

赞(1)菜鸟菜鸟阅读(1648)

史上最好理解的红黑树讲解,让你彻底搞懂红黑树

目录 一、红黑树简介 二、为什么需要红黑树? 三、红黑树的特性 四、红黑树的效率 4.1 红黑树效率 4.2 红黑树和AVL树的比较 五、红黑树的等价变换 六、红黑树的操作  6.1 旋转操作 6.2 插入操作 6.2.1 插入操...

赞(1)菜鸟菜鸟阅读(5579)

硬核图解面试最怕的红黑树

注:本文比较硬核但是很值得大家花心思看完,看完你一定会有所收获的 红黑树是面试中一个很经典也很有难度的知识点,网传字节跳动面试官最喜欢问这个问题。很多人会觉得这个知识点太难,不想花太多功夫去了解,也有人会认为这个数据结构在日常开发中使用的很...

赞(1)菜鸟菜鸟阅读(2362)

红黑树详解

1. 概述 1.1 红黑树的引入 有了二叉搜索树,为什么还需要平衡二叉树? 在学习二叉搜索树、平衡二叉树时,我们不止一次提到,二叉搜索树容易退化成一条链 这时,查找的时间复杂度从 O ( l o g 2 N ) O(log_2N) O(lo...

赞(0)菜鸟菜鸟阅读(3097)

六种常见聚类算法

 目录 Kmeans  DBSCAN-基于密度的空间聚类算法 谱聚类 GMM-高斯混合模型  MeanShift-均值迁移 层次聚类  代码 Kmeans 聚类原则:以空间中k个点为中心进行聚类,对最...

赞(0)菜鸟菜鸟阅读(6912)

什么是基数排序?

文章目录 什么是基数排序 稳定的计数排序 基数排序的实现 复杂度 什么是基数排序 数据结构与算法 | 计数排序 在之前的博客中,我介绍过一种非比较排序——计数排序。 计数排序的原理很简单,就是用一个数组来统计每种数字出现的次数,然后按照大小...

赞(0)菜鸟菜鸟阅读(2756)

优化算法——模拟退火算法

模拟退火算法原理 爬山法是一种贪婪的方法,对于一个优化问题,其大致图像(图像地址)如下图所示: 其目标是要找到函数的最大值,若初始化时,初始点的位置在 C C C处,则会寻找到附近的局部最大值 A A A点处,由于 A A A点出是一个局部...

赞(0)菜鸟菜鸟阅读(2516)

有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "...

赞(0)菜鸟菜鸟阅读(2214)