会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Ayue
博客园
首页
新随笔
联系
订阅
管理
[置顶]
时间复杂度和空间复杂度
摘要: 写在前面 在学习数据结构和算法的时候,经常会碰到O(1),O(n)等等用来表示时间和空间复杂度,那这到底是什么意思。我们对于同一个问题经常有不同的解决方式,比如排序算法就有十种经典排序(快排,归并排序等),虽然对于排序的结果相同,但是在排序过程中消耗时间和资源却是不同。 对于不同排序算法之间的衡量方
阅读全文
posted @ 2021-11-28 12:00 Ayue、
阅读(75)
评论(0)
推荐(0)
[置顶]
十大排序算法
摘要: 冒泡排序 从数组头开始,比较相邻的元素。如果第一个比第二个大(小),就交换它们两个 对每一对相邻元素作同样的工作,从开始第一对到尾部的最后一对,这样在最后的元素应该会是最大(小)的数 重复步骤1~2,重复次数等于数组的长度,直到排序完成 代码实现 对下面数组实现排序:{24, 7, 43, 78,
阅读全文
posted @ 2021-11-26 09:32 Ayue、
阅读(196)
评论(0)
推荐(1)
2021年12月27日
Redis常用数据结构及应用场景
摘要: 1. 概述 Redis 一个开源的基于键值对(Key-Value)NoSQL 数据库。使用 ANSIC 语言编写、支持网络、基于内存但支持持久化。性能优秀,并提供多种语言的 API。 我们要首先理解一点,我们把 Redis 称为 KV 数据库,键值对数据库,那就可以把 Redis 内部的存储视为存在
阅读全文
posted @ 2021-12-27 18:50 Ayue、
阅读(339)
评论(0)
推荐(0)
2021年11月28日
BF算法和KMP算法
摘要: 什么是串 数据结构中,字符串要单独用一种存储结构来存储,称为串存储结构。这里的串指的就是字符串。字符串通常是由零个或多个字符组成的有限序列。 一般地,由n个字符串构成的串记作: S="a0a1......an-1"(n≥0),串中的ai(1≤i≤n) n是一个有限的数值 串一般记为S是串的名称,用双
阅读全文
posted @ 2021-11-28 12:08 Ayue、
阅读(204)
评论(1)
推荐(0)
细讲红黑树
摘要: 写在前面 红黑树也是一棵二叉查找树,既然有了AVL树为什么还需要红黑树呢? 之前在了平衡二叉树AVL实现中讲到了为什么使用平衡二叉树AVL(解决二叉查找树退化为类似链表的问题),最大的作用就是用于查找,其时间复杂度为O(logn),但AVL树插入或删除节点后,若使得高度之差大于1,此时,AVL树的平
阅读全文
posted @ 2021-11-28 12:06 Ayue、
阅读(92)
评论(0)
推荐(0)
二叉搜索树和平衡二叉树
摘要: 写在前面 前面讲了树的基本概念,这篇文章主要讲常见的树的基本操作,如查找,新增,删除等。其中通过动图的方式使得更加容易理解。 二叉查找树 二叉查找树(BST,Binary Sort Tree),也称二叉排序树,或二叉搜索树。一棵二叉查找树满足以下条件: 左子树的所有值均小于根节点的值 右子树的所有值
阅读全文
posted @ 2021-11-28 12:04 Ayue、
阅读(149)
评论(0)
推荐(0)
什么是哈夫曼树
摘要: 写在前面 之前讲的链表,栈,队列等都是线性存储结构,都是一对一的关系。而树是具有一对多关系的数据结构。比如我们经常说的湖北省武汉市,湖南长沙的一个类图,就类似于一颗倒转的树。 什么是树 树是一种数据结构,由n个节点构成的具有层次关系的有限集合。 树的基本术语 节点:树中的每一个数据元素都是节点(A,
阅读全文
posted @ 2021-11-28 12:02 Ayue、
阅读(326)
评论(0)
推荐(0)
栈和队列
摘要: 写在前面 栈和队列,也属于线性表,因为它们也都用于存储逻辑关系为 "一对一" 的数据。使用栈结构存储数据,讲究先进后出,即最先进栈的数据,最后出栈;使用队列存储数据,讲究先进先出,即最先进队列的数据,也最先出队列。 什么是栈 栈是一种只能从表的一端存取数据且遵循 "先进后出" 原则的线性存储结构,同
阅读全文
posted @ 2021-11-28 11:59 Ayue、
阅读(70)
评论(0)
推荐(0)
链表之LinkedList
摘要: 写在前面 在日常开发中,一般在对于List的场景,基本上都是通过ArrayList去封装数据的,而对于链表LinkedList相对来说用的比较少。对我而言,好像ArrayList熟练度高一些,所以基本上也很少用LinkedList,也就是在面试的时候去背过八股文。 链表:数据分散的存储在物理空间中,
阅读全文
posted @ 2021-11-28 11:57 Ayue、
阅读(39)
评论(0)
推荐(0)
2021年11月25日
ArrayList扩容机制
摘要: 写在前面 数据结构在面试中基本都是常问的,但是一般开发中基本上都是在使用没有去关心过怎么实现的。 在数据结构中,链表是一种线性存储结构,也就是常说的线性表。 概念:线性表,是数据结构中的一种数据存储结构,数据元素之间具有“一对一”的逻辑关系。可以理解为把所有数据用一根线串起来,在存储到物理空间中。
阅读全文
posted @ 2021-11-25 14:58 Ayue、
阅读(79)
评论(1)
推荐(0)
公告
点击右上角即可分享