最长公共子串作为编辑距离中的一种,只允许增加、删除字符两种编辑操作。最长公共子串的大小,表示两个字符串相似程度的大小。 从 a[0] 和 b[0...
最长公共子串作为编辑距离中的一种,只允许增加、删除字符两种编辑操作。最长公共子串的大小,表示两个字符串相似程度的大小。 从 a[0] 和 b[0...
编辑距离:将一个字符串转化成另一个字符串,需要的最少编辑操作次数(比如增加一个字符、删除一个字符、替换一个字符)。编辑距离越大,说明两个字符串的...
8x8 的棋盘,8 个棋子(皇后),每个棋子所在的行、列、对角线都不能有另一个棋子
也叫“字典树”。顾名思义,它是一个树形结构。它是一种专门处理字符串匹配的数据结构,用来解决在一组字符串集合中快速查找某个字符串的问题。其中,根节...
针对动态数据,求排序后处于中间的数据思路:维护两个堆,一个大顶堆,一个小顶堆。大顶堆中存储前半部分数据,小顶堆中存储后半部分数据,且小顶堆中的数...
求数组中前k大的数据思路:维护一个数据大小为k的小顶堆,循环遍历数组,如果比堆顶元素大,我们就把堆顶元素删除,并且将这个元素插入到堆中;如果比堆...
跳表的基本结构: Redis为什么使用跳表实现有序集合? 1.redis的有序集合中有一个很重要的操作是,按照区间查找数据。跳表可以做到 O(l...
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?思路:n阶第一步踏出的时候,...
给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右...
设计实现双端队列。你的实现需要支持以下操作:MyCircularDeque(k):构造函数,双端队列的大小为k。insertFront():将一...
专题公告
学习数据结构与算法的一些整理,以备后续查看
代码使用Java实现