算法
文章平均质量分 96
白晨并不是很能熬夜
大家好,我是白晨。这个人想日更,但是好像不太可能,尽量不咕咕咕吧。
展开
-
【蓝桥杯】蓝桥杯算法复习(二)
本文适合有一定算法基础,但是由于各种原因已经很久没有敲代码的同学。本文以复习+练习为主,旨在通过练习算法题快速复习已经遗忘的算法。即使不是参加蓝桥杯的同学,如果符合上面的条件,依然可以参考本文进行复习。更多本系列文章见蓝桥杯专栏。如果你是新手,可以参考白晨的算法专栏进行学习。原创 2024-03-21 11:00:00 · 1302 阅读 · 0 评论 -
【数据结构与算法】常用数据结构(二)
大家好,我是白晨。本次又为大家带来的是常用数据结构的模拟实现,主要用于在算法比赛中快速实现一种常用模拟实现。那为什么不用STL呢?首先,STL为了保证其接口的通用性以及要严格符合一个数据结构的定义,在使用时可能不是非常方便;其次,模拟实现的数据结构在运行速度方面是要快于STL的容器的。上篇文章常用数据结构(一)我们介绍了单链表、双链表、栈、队列以及堆这五种最常用的数据结构的模拟实现,本次白晨将在上篇文章的基础上为大家介绍5种更高级的常用数据结构——单调栈、单调队列、并查集、Trie以及哈希表。原创 2023-05-08 10:30:00 · 772 阅读 · 8 评论 -
【算法】最短路算法
这次为大家分享的是图论中的最短路算法。考虑到最短路算法的复杂性以及本文新手向的教程,本次算法讲解列举了大量例子并且配上了大量动图。篇文章所有的代码实现都是算法向的,以快速实现和效率为主,如果出现算法向的代码实在看不懂,可以参考白晨的工程向实现的代码原创 2023-02-25 10:30:00 · 3610 阅读 · 18 评论 -
【算法】图的遍历
本次白晨带来的是图论中最基础,但也最重要的部分——图的遍历。众所周知,图的存储方式有一般有邻接表和邻接矩阵两种,这两种存储方式的遍历方式也各不相同,但是无非也就是访问出边和入边的方式不同罢了(邻接矩阵之间访问当前行/列,邻接表则访问对应节点的链表),思想还是相同的。本文中对于邻接表的实现方法不过多介绍(以后会专门讲解我这种实现),各位只需要用自己擅长的实现即可,主要的题目中的思想。原创 2023-03-27 10:00:00 · 1023 阅读 · 17 评论 -
【数据结构与算法】Trie
本次要带大家认识的的是Trie,这是一个便于快速查询字符串等数据出现次数的数据结构,在算法竞赛中也是一个比较好用的结构。虽然使用也能实现类似功能,但是Trie更加节省空间并且在存储数字等结构,它还有无法代替的优势,这里先买个关子,在下面文章中我会详细讲解。Trie字典树又叫前缀树(prefix tree),用以较快速地进行单词或前缀查询。Trie树本质上就是一棵多叉树,用来存储字符串或者其他数据。原创 2023-01-12 10:30:00 · 1615 阅读 · 32 评论 -
【算法】哈希表
本次为大家带来的是哈希表在算法中的应用与实践,主要讲解哈希表的思路以及在算法题中的应用,本篇文章由于是面向算法党的,对于工程实现部分讲解较为粗糙,以后会在STL中详细讲解工程实现。当然,本篇文章会给出哈希表的两种快速实现,希望大家能将这两个模板理解记忆,方便面试中或者算法竞赛中快速实现。散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。原创 2023-01-07 10:30:00 · 3032 阅读 · 26 评论 -
【数据结构与算法】并查集
大家好,我是白晨,这次为大家带来的数据结构是并查集,这是一种能够快速合并两个集合以及快速查询两个元素是否在一个集合中,时间复杂度在大量查询的情况下可以达到O(1)的数据结构,由于实现思路简单,代码短,性质好,经常会在算法题中用到。同时,并查集也在与图相关的算法中出现过很多次,例如,最小生成树Kruskal算法就使用了并查集。并查集 (英文:Disjoint-set data structure,直译为不交集数据结构)是一种数据结构 ,用于。原创 2023-01-31 10:30:00 · 3177 阅读 · 4 评论 -
【数据结构与算法】常用数据结构(一)
大家好,我是白晨。本次为大家带来的常用数据结构的模拟实现,主要用于在算法比赛中快速实现一种常用模拟实现。那为什么不用STL呢?首先,STL为了保证其接口的通用性以及要严格符合一个数据结构的定义,在使用时可能不是非常方便;其次,模拟实现的数据结构在运行速度方面是要快于STL的容器的。本篇文章将详细介绍单链表、双链表、栈、队列以及堆这五种常见数据结构的模拟实现,由于本次是面向新人的教程,白晨使用大量图片、动图和语言描述详细拆解一个模拟数据结构的实现。原创 2023-04-23 10:00:00 · 558 阅读 · 8 评论 -
【算法】算法基础入门详解:轻松理解和运用基础算法
本次白晨想要分享的是新手学习必会的基础算法,由于这篇文章是新手向的,所以白晨这次对于算法思想尽量讲解的细致生动,代码实现尽量简洁易懂,同时我会贴上练习算法的题目链接,大家看完算法思路一定要自己去动手敲一遍,争取能把基础算法背下来。算法的代码风格是偏向于快速实用的,没有像工程向代码一样严谨缜密、缩进和换行严格要求,两种代码风格各有优势,本篇文章大多数算法代码采用算法风格。原创 2023-03-11 10:30:00 · 2983 阅读 · 9 评论 -
西北工业大学算法实验机试复习
本篇文章送给每一个正在复习算法实验的同学❤️,愿大家都能满分过实验。本篇文章包含了常见算法题目,方便大家查漏补缺。算法实验不能光背代码,理解其中的意义,并且能实现出来才算真的掌握。能找到实验OJ的题目我会给出链接,一定要自己敲上一回,没有在线OJ的也要自己在本地IDE上实现一下。这里要提醒一句,如果你是西工大考生,西工大算法实验考试是在做实验的网站上的,编译原创 2022-12-06 10:15:00 · 1459 阅读 · 16 评论 -
西北工业大学算法理论考试复习
此文章献给正在准备算法考试的学弟学妹,祝你们都能满绩过算法❤️。大O算法定义算法是求解问题的一系列计算步骤,用来将输入数据转换成输出结果。输入性输出性确定性可行性有限性。原创 2022-11-20 21:42:39 · 1010 阅读 · 4 评论 -
【算法】高精度计算π(pi)值
😀大家好,我是白晨,一个不是很能熬夜😫,但是也想日更的人✈。如果喜欢这篇文章,点个赞👍,关注一下👀白晨吧!你的支持就是我最大的动力!💪💪💪文章目录📔前言📕1.公式选择📗2.实现难点解析📘3.代码实现📙后记📔前言π 一直是一个备受数学界青睐的数字。从古至今,无数的学者都在努力探求着 π 精确值。原创 2022-03-21 09:13:34 · 11941 阅读 · 71 评论