算法
文章平均质量分 96
卷儿~
在校大学生,好撸铁。性别男,爱好女。
个人主页:http://www.wayne-lee.cn/
展开
-
【算法基础】区间动态规划 例题与解析
好的小伙伴们,疯狂鸽鸽的卷卷毛来了,今天来分享的,区间动态规划,简称区间dp(dynamicprogramming)(dynamic programming)(dynamicprogramming),是动态规划的一种。就是动态规划其中一种模型:区间dp提到动态规划,它是我们在算法题目中常见到的老朋友了,也往往是思维难度相对较大题目的解决核心,潘子就告诉过我们:“动态规划水很深,你把我不住”引起这个问题的原因有很多,一个常见的情况就是:动态规划算法题目往往会引起贪心算法的直觉。而一旦将思路限制在贪心算法原创 2021-06-03 22:58:20 · 1038 阅读 · 5 评论 -
【数据结构与算法拓展】最短路径的方案数统计问题(基于floyd算法)
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-12-15 19:51:02 · 3069 阅读 · 5 评论 -
【数据结构与算法基础】树与二叉树的互化
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-12-11 15:55:09 · 3978 阅读 · 0 评论 -
【数据结构与算法基础】AOE网络与关键路径
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-12-06 22:38:06 · 4936 阅读 · 3 评论 -
【数据结构与算法基础】最小生成树算法原理及实现
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-27 21:32:26 · 2123 阅读 · 0 评论 -
【数据结构与算法基础】堆排序原理及实现
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-27 10:19:27 · 749 阅读 · 0 评论 -
【数据结构与算法基础】最短路径问题
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-25 09:40:33 · 13587 阅读 · 1 评论 -
【数据结构与算法基础】哈夫曼树与哈夫曼编码(C++)
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-23 00:27:25 · 5715 阅读 · 7 评论 -
【数据结构与算法拓展】二叉堆原理、实现与例题(C和java)
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-21 18:34:18 · 699 阅读 · 1 评论 -
【数据结构与算法基础】并查集原理、封装实现及例题解析(C和java)
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-11-13 19:28:17 · 517 阅读 · 5 评论 -
【数据结构与算法拓展】 单调队列原理及代码实现
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-10-28 20:35:17 · 969 阅读 · 2 评论 -
【数据结构与算法基础】二叉树与其遍历序列的互化 附代码实现(C和java)
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-10-23 22:08:02 · 518 阅读 · 2 评论 -
【数据结构与算法基础】模式匹配问题与KMP算法
前言数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷。也因如此,它作为博主大二上学期最重要的必修课出现了。由于大家对于上学期C++系列博文的支持,我打算将这门课的笔记也写作系列博文,既用于整理、消化,也用于同各位交流、展示数据结构的美。此系列文章,将会分成两条主线,一条“数据结构基础”,一条“数据结构拓展”。“数据结构基础”主要以记录课上内容为主,“拓展”则是以课上内容为基础的更加高深的数据结构原创 2020-10-10 19:05:14 · 1037 阅读 · 0 评论 -
【数论基础】线性求逆元
线性求解连续的n个逆元线性求解n个数字的逆元,需要找到新元素的逆元同以往求解过逆元的关系。以下面式子举例,对于要求解逆元的k,模数为p,有:p=ak+b(b<a,k)p=ak + b \\(b < a,k)p=ak+b(b<a,k)进而有:ak+b≡0 (mod p)ak + b \equiv 0\, (mod\,p)ak+b≡0(modp)两边同时乘以k-1b-1,得到:ab−1+k−1≡0 (mod p)ab^{-1} + k^{-1} \equiv 0\,原创 2020-08-07 22:18:37 · 3183 阅读 · 1 评论 -
lyndon分解! 2020杭电多校1 1011 Minimum Index
学到了个新的操作,调题目调了好久,但是很有意思,分享一哈。题目大意题目链接在此大致意思就是给定T个字符串,每个字符串尤其长度个数量的前缀,求其每个前缀中字典序最小的后缀的起始位置,并将他们乘上1112的幂加起来对1e9 + 7取模。题目不难理解,但就是每个字都看懂了,连起来就是不会或者说没有思路。要解决这个问题,一种可行的方法是借助lyndon分解,下面我们就先来看一下lyndon分解是何方神圣。lyndon分解介绍lyndon分解前,我们需要先了解一个概念:lyndon串。对于字符串 ,原创 2020-07-23 10:38:10 · 549 阅读 · 2 评论 -
【算法基础】 背包dp问题:背包九讲
01背包状态转移二维转一维循环方向答案位置初始化为负无穷,答案需要统计(当前体积价值最大)初始化为零,答案为最后一位(小于等于当前体积价值最大)完全背包循环方向(反转正)...原创 2020-02-14 22:20:38 · 738 阅读 · 0 评论 -
JAVA封装元素为对象的堆
java实现元素为任意对象的堆分析与设想前几日复习了堆的知识,实现了整型堆。但是整型堆仅能用于处理元素为整型的数据,在处理各种的题目的时候往往不便于使用。于是,为了实现广义上的堆,将元素类型从整型变为对象。我决定利用java多态和便于封装的性质,来实现这个元素为任意类型对象的堆。那么,为了实现这个数据结构,我们就必须弄清楚它和整型堆相比,需要解决的问题在哪里,以及怎样通过设计解决它。对于原...原创 2020-02-09 14:54:39 · 179 阅读 · 0 评论 -
【Java基础】数组的排序算法调用
排序语句的使用初转java,很多操作都要重新学习java的版本。比如今天的主角:排序语句。在程序设计过程中,排序算法是最常用到的算法之一,正是因为其经常用到,所以掌握利用已经设计好的算法语句,会大大提升程序设计过程中的效率。主要优点如下:进行排序仅需要一句话,方便书写设计好的算法,确保正确率算法出自高手,保证运行效率那么与C语言qsort和sort不同的是,JAVA语言中并不存在孤...原创 2020-02-09 14:51:21 · 1472 阅读 · 0 评论 -
JAVA实现高精度整数加减乘
首先,需要指出的是,java内的BigInteger类很好用,功能相当全面。像加减乘这样的基础操作都是可以胜任的。所以,在java中其实没有手动实现高精度的必要。所以写下这篇博客的初衷并不是放在实际情况下使用,而是当做高精度算法的练习,也同时练习java编程能力。封装类内容:实现接口克隆接口Cloneable,重写clone方法。便于复制可比较接口Comparable,实现Compare...原创 2020-02-09 11:31:44 · 2553 阅读 · 0 评论