
图书推荐
文章平均质量分 94
赠书活动
颜淡慕潇
985硕士,资深高级研发工程师;优快云认证专家博主,优快云内容战略合伙人,新星计划导师,全栈开发领域杰出内容创作者,同时荣获阿里云专家博主及星级博主殊荣。
平时就爱捣鼓后端及前端技术,分享干货,承蒙厚爱,感谢支持! 希望和大家一起努力,成为更好的自己!
展开
-
【算法系列 | 12】深入解析查找算法之—斐波那契查找
查找算法是计算机科学中的一类算法,用于在数据集中寻找特定值或数据项。其目标是确定数据是否存在于给定的数据结构中,并找到数据项的位置(索引)或其他相关信息。不同的查找算法适用于不同类型的数据结构,数据有序性,以及数据规模。以下是一些常见的查找算法以下是一些常见的查找算法及其应用场景:布隆过滤器(Bloom Filter):适用于判断一个元素是否存在于一个大规模的数据集中,时间复杂度为O(1),但有一定的误判率。二分查找。原创 2024-01-05 10:30:21 · 49436 阅读 · 65 评论 -
【文末送书】1000道精心打磨的计算机考研题,408小伙伴不可错过
这本书适合作为报考计算机类学科硕士研究生的复习参考书,尤其适用于报考专业课代码为408的学生在经过一轮复习之后的强化训练。原创 2023-11-13 10:21:00 · 30050 阅读 · 26 评论 -
【资讯分享】国家数据局正式揭牌,数据专业融合型人才迎来发展良机
在当下及未来,数据的价值越来越高,业界很多专家甚至认为数据将成为第四产业,是未来几年甚至几十年最重要的生产要素。我们有理由相信,今后数据人才需求一定会迎来爆发式增长,推荐几本数据技术相关的好书,助你赢在起跑线上!原创 2023-10-30 06:00:00 · 22533 阅读 · 25 评论 -
【Go之道】探索Go语言之旅:基础与进阶指南
Go语言是一门强大而简单的编程语言,适用于各种应用领域。无论你是初学者还是有经验的开发人员,Go都值得学习。希望这篇入门介绍可以帮助你开始学习Go,并探索其丰富的功能和库。祝你编程愉快!原创 2023-10-19 16:21:56 · 36996 阅读 · 113 评论 -
【MySql系列】深入解析数据库索引
在数据库中,索引是一种数据结构,用于快速查找表中的数据。索引包含表中一列或多列的值,这些值按照一定的顺序进行排序,以便优化数据的检索速度。通过使用索引,数据库可以避免全表扫描,从而提高查询性能。原创 2023-10-16 09:25:03 · 58044 阅读 · 114 评论 -
【算法系列 | 10】深入解析查找算法之—线性查找
线性查找是一种简单而直观的搜索算法,一种基本的搜索算法,用于在一个集合中查找特定元素的位置或确定特定元素是否存在。适用于特定的小型数据集或无序数据集,但对于大型数据集,需要更高效的算法来提高性能。了解线性查找的原理和适用性有助于选择适当的搜索方法。原创 2023-10-13 10:17:59 · 25312 阅读 · 90 评论 -
【算法系列 | 9】深入解析查找算法之—哈希表查找
哈希表查找算法在许多应用中具有高效的性能,但它也有一些限制,如哈希冲突和不适合有序数据。选择哈希表作为查找数据结构时,需要权衡其优点和缺点,并确保选择合适的哈希函数和冲突解决方法。原创 2023-10-12 17:51:16 · 27882 阅读 · 87 评论 -
【算法系列 | 8】深入解析查找算法之—二分查找
二分查找算法(Binary Search),也称为折半查找,是一种用于在有序数据集合中查找目标元素的高效算法。它的核心思想是将查找范围逐渐缩小一半,直到找到目标元素或确定目标元素不存在为止。原创 2023-09-13 21:52:29 · 27749 阅读 · 58 评论 -
【软件工程】软件工程之道—《人月神话》读后思考
《人月神话》是一本由弗雷德里克·布鲁克斯(Frederick P. Brooks)所著的计算机科学经典著作。这本书首次出版于1973年,至今仍然被认为是计算机科学领域的重要参考书籍之一。它对我产生了深远的影响。通过作者弗雷德里克·布鲁克斯的深入剖析和丰富的实践经验,我对软件开发项目的管理有了全新的认识。原创 2023-09-04 23:04:25 · 14364 阅读 · 94 评论 -
【算法系列 | 7】深入解析查找算法之—布隆过滤器
布隆过滤器(Bloom Filter)是一种概率型数据结构,用于快速判断一个元素是否可能存在于一个集合中,同时具有高效的插入和查询操作。它的原理基于位数组和哈希函数。布隆过滤器的核心是一个位数组(bit array)或称为位向量(bit vector),用于表示元素的存在状态。初始时,所有位都被置为0。原创 2023-08-07 16:37:58 · 39103 阅读 · 71 评论 -
【系统架构】分布式系统架构设计
在分布式系统的设计中,需要综合考虑上述各个方面,根据具体需求进行合理的设计和优化,以实现高效、可靠、安全的分布式系统。原创 2023-07-13 10:36:16 · 25981 阅读 · 135 评论 -
【网络技术】计算机网络介绍
计算机网络是由若干台计算机和与之相连的通信设备组成的系统,这些设备通过通信链路进行数据交换和共享资源。计算机网络可以实现远程数据传输、远程控制、远程协作等功能,它是现代信息技术的基础。ifconfig(interface configuration)是一个用于配置和显示网络接口信息的命令行工具,常用于Unix、Linux和其他类Unix操作系统中。原创 2023-07-10 10:37:55 · 15362 阅读 · 137 评论 -
【Java系列】Java虚拟机—类加载器介绍
Java类加载器是Java虚拟机的一个重要组成部分,它负责将编译后的Java类文件加载到内存中,并转换为可以被JVM执行的代码。Java类加载器按照加载类的位置和方式可以分为引导类加载器、扩展类加载器、系统类加载器和自定义类加载器。Java类加载器的工作原理是按照“双亲委派”模型来实现的。Java类加载器的性能优化可以从缓存机制、类的预加载和Class文件的优化等方面入手。原创 2023-07-04 18:48:23 · 37858 阅读 · 57 评论 -
【网络技术】TCP详解
TCP协议提供了可靠的数据传输、流量控制、拥塞控制、数据重传、数据分段和序列号等功能。在TCP协议进行数据传输之前,需要先建立TCP连接,建立连接的过程中,客户端和服务器进行三次握手(SYN、SYN-ACK、ACK),以确保双方都能够接收和发送数据。TCP协议通过使用ACK确认机制和序列号机制,保证传输的数据不会丢失、重复或者失序。每个数据包都会被确认,并且数据包的传输顺序不会发生错误。此外,TCP协议还提供了流量控制、拥塞控制、数据重传、数据分段和序列号等功能,以满足不同的传输需求。原创 2023-07-06 13:31:44 · 39794 阅读 · 113 评论 -
【云原生系列】云计算概念与架构设计介绍
云计算是一种基于互联网的计算模式,在这个模式下,各种计算资源(例如计算机、存储设备、网络设备、应用程序等)可以通过互联网实现共享和交付。云计算架构设计的主要目标是实现高效、可扩展、可靠、安全和经济的计算资源共享。在云计算架构中,通常会采用分层的设计思路,将计算资源划分为不同的层次,每个层次负责不同的功能和任务。例如,常见的云计算架构通常包括以下几个层次:物理层虚拟化层平台层应用层在上述云计算架构中,各个层次之间通过API(应用程序接口)进行通信和协作。原创 2023-07-03 16:50:58 · 51228 阅读 · 103 评论 -
【前端系列】前端如何使用websocket发送消息
WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它可以让客户端和服务器之间进行实时的双向通信。与传统的 HTTP 请求不同,WebSocket 使用了一个长连接,在客户端和服务器之间保持持久的连接,从而可以实时地发送和接收数据。原创 2023-06-30 17:01:45 · 30241 阅读 · 77 评论 -
【Java系列】深入解析Stream API
Stream API是Java 8中最重要的新特性之一,它提供了一种简单、灵活和可读的方式来处理集合和数组中的元素,使得代码更加简洁、高效和易于维护。原创 2023-06-23 16:25:30 · 24187 阅读 · 89 评论 -
【算法系列 | 6】深入解析排序算法之——堆排序
堆排序(Heap Sort)是一种基于堆数据结构的排序算法,其核心思想是将待排序的序列构建成一个最大堆(或最小堆),然后将堆顶元素与最后一个元素交换,再将剩余元素重新调整为最大堆(或最小堆),重复以上步骤直到所有元素都有序。原创 2023-06-13 17:07:32 · 19375 阅读 · 69 评论 -
【算法系列 | 4】深入解析排序算法之——归并排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)归并排序(Merge Sort)是一种基于分治思想的排序算法,它将待排序的数组分成两部分,分别对这两部分递归地进行排序,最后将两个有序子数组合并成一个有序数组。原创 2023-06-10 18:23:18 · 24988 阅读 · 74 评论 -
【图书推荐 | 14】后端系列
本期图书列表:Spring Cloud 微服务快速上手项目驱动零起点学JavaNode.js 从基础到项目实战Diango Web 开发实例精解Flask Web 全栈开发实战精通Hadoopsmysql 数据库基础与实战应用Neo4j 图谱分析实战原创 2023-06-10 11:16:03 · 9458 阅读 · 80 评论 -
【图书推荐 | 13】前端系列
本期书籍:前端系列。原创 2023-06-09 22:56:05 · 12630 阅读 · 93 评论 -
【算法系列 | 3】深入解析排序算法之——选择排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)选择排序(Selection Sort)是一种简单的排序算法,其基本原理是在未排序的元素中找到最小(或最大)的元素,然后将其放在已排序的序列的末尾。重复这个过程,直到所有元素都被排序完毕。原创 2023-06-09 22:42:06 · 13170 阅读 · 59 评论 -
【算法系列 | 2】深入解析排序算法之——插入排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)插入排序原理介绍插入排序是一种简单直观的排序算法,其原理是将一个数组分成已排序和未排序两部分。原创 2023-06-05 10:45:08 · 18068 阅读 · 99 评论 -
【算法系列 | 1】深入解析排序算法之——冒泡排序
这些排序算法各有特点,可以根据具体需求选择适合的算法。在实际应用中,常常需要综合考虑时间复杂度、空间复杂度、稳定性等因素进行选择。原创 2023-06-02 22:28:47 · 17452 阅读 · 78 评论 -
【人工智能】常见问题以及解答
人工智能(Artificial Intelligence, AI)是一门涉及计算机科学、数学、心理学、哲学等多个领域的交叉学科,旨在研究如何使计算机能够像人一样地思考、学习和行动。在过去几十年中,人工智能技术得到了广泛的应用和发展,涵盖了诸如机器学习、自然语言处理、计算机视觉、知识表示和推理等多个方向。这些技术的发展为我们提供了许多强大的工具和应用,例如智能语音助手、自动驾驶汽车、医疗诊断和机器人等。原创 2023-06-01 21:57:25 · 8451 阅读 · 87 评论 -
【Java系列】深入解析枚举类型
Java 枚举(Enum)是一种特殊的数据类型,它是一组预定义的常量,每个常量都有一个名称和一个值。枚举类型在 Java 中被广泛使用,它可以用来代替常量、标志位、状态码等,使代码更加清晰、易读和易维护。原创 2023-05-24 11:17:56 · 26479 阅读 · 96 评论 -
【业务架构】业务驱动的推荐系统相关技术总结
推荐系统是一种基于用户历史行为和属性信息为用户推荐个性化内容的技术。而业务驱动的推荐系统,是指根据业务需求,将推荐系统集成进业务流程中,通过推荐系统提高业务效率、提升用户体验等目的。以下是一些相关实现技术。原创 2023-05-23 15:16:50 · 13255 阅读 · 82 评论 -
【K8S系列】快速初始化⼀个最⼩集群
k8s作为⼀个相对⽐较复杂的系统,它有⼀定的⼊⻔⻔槛,我曾浏览它的⽂档很多次,光是在安装的环节上就耗费很久,劝退指数极⾼,但是我们不需要⼀开始就花费很多的时间从安装开始接触它所以我们可以借⽤Docker-Desktop快速启动⼀个本地化最⼩集群,能让我们快速上⼿演练,随着对k8s的理解加深,安装的部分也就迎刃⽽解了。原创 2023-05-12 16:00:19 · 21199 阅读 · 141 评论 -
【Java系列】深入解析Java多线程
Java多线程是提高程序并发性和响应能力的重要手段,需要掌握多线程的实现方式、同步机制、线程之间的通信机制等,以确保多线程程序的正确性和稳定性。原创 2023-05-09 08:43:54 · 23562 阅读 · 112 评论 -
【Python系列】一个简单的抽奖小程序
想自己写一个抽奖小程序,用于粉丝抽奖结果。原本规划的比较理想:1.实时拉取评论用户信息2.数据清洗,数据去重3.存储评论用户信息4.前端酷炫的展示效果但………………一步一步来吧,总会实现的!原创 2023-05-06 18:16:29 · 20348 阅读 · 69 评论 -
【网络技术】什么是CNI
CNI是一个用于容器网络的规范和接口,它定义了一组标准的API和插件,用于在容器运行时创建、配置和管理网络。详细一点说,是定义了一组标准接口和数据格式,用于让容器运行时(如Docker、Kubernetes等)与网络插件(如Calico、Flannel、Weave等)进行交互。CNI的设计初衷是为了解决容器网络的多样性和复杂性,使得容器可以灵活地与各种网络环境集成。add:用于在容器中创建网络接口和配置网络参数。delete:用于删除容器中的网络接口和清除网络配置。check。原创 2023-05-01 07:00:00 · 18364 阅读 · 111 评论 -
【网络技术】什么是CIDR
CIDR是一种更加灵活和高效的IP地址分配和路由选择技术,它能够更好地满足不同网络环境的需求,提高网络资源的利用率和路由选择的效率。原创 2023-05-08 09:58:43 · 22442 阅读 · 78 评论 -
【前端】从零开始读懂Web3
Web的发展史可以看作是一个不断演化和发展的过程,不断地引入新的技术和概念,不断地提高用户体验和互动性。随着Web技术的不断发展和演化,我们可以期待更加智能、便捷和个性化的Web应用程序和服务的到来。原创 2023-04-17 16:07:06 · 26803 阅读 · 96 评论