![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
新星计划
文章平均质量分 80
普通网友
这个作者很懒,什么都没留下…
展开
-
Redis问题汇总和解决方案,持续完善
redis单线程为什么那么快, 1.绝大部分基于内存 2.IO多路复用,epoll 3.复杂高效的数据结构的设计 redis简单的get set,底层存储原理: 哈希表,数组+链表的形式, 1,传入key,对key哈希计算,然后取模,放到对应数组位置的链表上,key,value存再里面 2.redis自身良好的设计基本不会出现哈希碰撞 redis的五种数据结构: 字符串string: 1.单值缓存 set get 2.对象缓存 set (json格式) Mset Mget 3.分布式锁 SETNX原创 2021-06-06 16:56:56 · 275 阅读 · 0 评论 -
多进程,多线程,协程,锁,线程池 概述
前言 为什么我要写这篇文章呢,因为在我深入学习进程和线程这一章以前,我也是对于这个概念含含糊糊,知其然不知其所以然,我要告诉大家一个道理,会用和知道在特定业务场景下使用哪种合适是两回事,并不一定用了就会节约时间的噢 进程 进程:资源分配的最小单位 线程:CPU调度的最小单位 相信这两个概念大家都有所了解,但是有没有想过,什么是资源分配,什么又是CPU调度呢,我想给大家白话文的翻译一下我的理解 资源分配:主机有一块内存,我一共就单核的1个G这麽大,这时候,我同时开了QQ,微信,微博和CSDN,每一个软件在你原创 2021-06-01 14:59:56 · 180 阅读 · 1 评论 -
算法:BFS(广度优先遍历)和DFS(深度优先遍历)
前言: 在我的文章中介绍了二叉树,B+树,红黑树以及简单提到的AVL树,是不是所以的树都少不了一个方法,遍历全部节点,那遍历全部节点的方法底层到底是什么原理呢,下面就要给大家介绍咯 BFS算法和DFS算法 在介绍算法之前,大家先简单观察一下下图这颗二叉树,是不是很简单,下面的算法我们基于这颗树来为大家简单的概括BFS和DFS算法 BFS:广度优先遍历 从根节点开始一层一层,从左向右依次遍历,也就是637258 原理思路:使用了队列先进先出的原理,先进去的节点先出来,并且每个节点假如有左右子树,都会在队列末原创 2021-05-25 18:58:15 · 338 阅读 · 8 评论 -
数据结构:堆(建堆和堆排序的python实现)
前言 这次我首先告诉大家堆的应用领域:TopK问题 、堆排序 、优先队列实现等 为什么这次要先告诉大家,因为这次希望先思考和结合下你们刷题或者面试的过程中,是否实现和解决过上述问题,也许不是用堆的原理解决的,但都可以更快的加深你对堆这一概念的理解,那废话不多说,我们开始吧 堆 **堆栈:**这两个词虽然经常被放在一起说,但是其实它俩在数据结构和算法中都有不同形式的体现 栈是用数据结构来实现的一种算法:数组,链表均可 堆也是用数据结构来实现的一种算法:树,数组均可 1.堆本身是一棵完全二叉树,下图记录了完全二原创 2021-05-26 17:35:38 · 811 阅读 · 7 评论