
数据结构与算法基础
文章平均质量分 80
介绍常用数据结构以及算法基础
ISGA
刚敲一年代码的初学者,希望可以养成更新推文的习惯记录成长和学习经历。
展开
-
[算法刷题练习] BFS搜索
此文章帮助你练习BFS。BFS算法适用于找到从起点到终点的最短路径,因为它按层次遍历节点,确保首次到达某个节点时一定是最短路径。原创 2024-08-13 16:09:49 · 225 阅读 · 0 评论 -
[数据结构与算法基础] STL 介绍及相关练习
STL,即标准模板库(Standard Template Library),是C++标准库中的一个重要组成部分。它提供了一组通用的类和函数模板,用于处理数据结构和算法。STL的主要目标是提高程序的可重用性、效率和可维护性。本文首先提供一些基础的练习题,方便了解STL的使用,以及常使用于什么类型的练习题中。说白了就是一个库,而我们常常会使用其中的一些容器,快速实现需求。使用STL解决此题,可以使用map,构造出map此题很简单,熟悉map相关操作即可。关于list的排序,使用。原创 2024-08-02 11:08:35 · 1296 阅读 · 0 评论 -
[数据结构与算法基础] Trie 单词查找树 -- 迅速掌握核心思想及基础用法
本文旨在帮助你迅速入门!在插入操作中,我们需要把一个一个的字符串,或者一个数串,插入到我们的查找树中。我们可以看到query代码其实和insert代码差不多,区别就是,我们没找到对应节点,即发现。当能够完整遍历str字符串,即中间没有直接返回0时,代表此字符串存在,我们最后返回结果。我们来完成一道例题巩固学习成果,此例题来自AcWing,是一道模板题。通过视频,我们可以发现其核心操作是插入操作(即存储数据)与查找操作...原创 2024-07-26 18:26:09 · 649 阅读 · 0 评论 -
[数据结构与算法基础] KMP算法讲解
KMP算法是一种高效的字符串匹配算法,由Knuth、Morris和Pratt三位计算机科学家于1977年提出。KMP算法通过在匹配过程中利用已部分匹配的信息来避免不必要的字符比较,从而显著提高了字符串匹配的效率。我们把模式串PPP中各个位置的jjj值的变化定义为一个数组 next。顾名思义,next数组表示jjj值的下一跳(下一步回退到哪儿)的值。对于长度为jjj,从1开始计数的字符串而言,第kkk个位置是从头数第kkk个字符,第j−kj-kj−k是从结尾数第kkk。原创 2024-07-18 17:11:08 · 912 阅读 · 0 评论