摘要:
1. 题目 读题 https://leetcode.cn/problems/target-sum/description/ 考察点 这道题的考察点是如何将一个看似复杂的问题转化为一个简单的问题,以及如何运用不同的算法思想来解决问题。具体来说,有以下几个方面: 如何利用数学公式将原问题转化为一个01背 阅读全文
摘要:
1. 题目 读题 https://leetcode.cn/problems/target-sum/description/ 考察点 这道题的考察点是如何将一个看似复杂的问题转化为一个简单的问题,以及如何运用不同的算法思想来解决问题。具体来说,有以下几个方面: 如何利用数学公式将原问题转化为一个01背 阅读全文
摘要:
https://blog.csdn.net/wdays83892469/article/details/79763421 一些关于动态规划和游戏最大伤害的题目和解法。 动态规划——卡牌游戏最大伤害_eck_燃的博客-CSDN博客 这篇博客介绍了一个卡牌游戏的问题,给出了暴力递归和动态规划的两种解法, 阅读全文
摘要:
动态规划背包问题 1. 引言 动态规划是一种解决复杂问题的方法,它可以将一个问题分解为若干个子问题,然后利用子问题的最优解来构造原问题的最优解。动态规划的核心思想是避免重复计算,即将已经求解过的子问题的结果保存起来,以便后续使用。 背包问题是一类经典的动态规划问题,它描述了一个背包有一定的承重上限, 阅读全文
摘要:
快速排序及其实现 快速排序是一种高效而常用的排序算法,它的基本思想是通过选择一个基准元素,将数组分成两个子数组,其中一个子数组中的元素都小于基准元素,另一个子数组中的元素都大于基准元素,然后对这两个子数组递归地进行快速排序,从而实现整个数组的排序。快速排序的平均时间复杂度为O(nlogn),最坏时间 阅读全文
摘要:
归并排序及其实现 归并排序是一种基于分治思想的排序算法,它的基本思想是将一个大的数组分成两个或多个小的数组,对每个小的数组进行排序,然后将这些有序的小数组合并成一个大的有序的数组。归并排序的时间复杂度为O(nlogn),空间复杂度为O(n),是一种稳定的排序算法。 归并排序的思想和本质是: 分治:将 阅读全文
摘要:
1. 题目 读题 有几种算法可以实现从n个不同元素的数组中等概率地取出m个不同元素, 考查点 这个算法题考察的是如何从一个数组中等概率地随机抽取一定数量的元素,也就是洗牌算法或蓄水池抽样的应用。 有几种常见的实现方法,比如: Fisher-Yates Shuffle算法:每次从数组中随机选一个数,然 阅读全文
摘要:
等概率随机取数算法的几种实现 最近读了项目中的工具脚本,发现一个随机取数的函数,功能大概是从M个数中不重复的随机取出N个数,算是数组随机排序然后取前N个值的变种。 脚本实现采取原始的方法,每随机取一个数就放到一个数组中,下次取数时遍历结果数组判断是否已经取出,平均时间复杂度为O(MlogM),空间复 阅读全文
摘要:
压缩列表(ziplist)是 Redis 的一种内存紧凑型的数据结构,它是一个字节数组,可以包含任意多个元素,每个元素可以是一个字节数组或一个整数。 压缩列表的结构由多个字段组成,包括 zlbytes(压缩列表的字节长度),zltail(压缩列表尾元素的偏移量),zllen(压缩列表的元素数目),e 阅读全文
摘要:
pt-table-checksum 工具介绍 pt-table-checksum 是 Percona Toolkit 的一个组件,用于检测 MySQL 主、从库的数据是否一致。它的原理是在主库执行基于 statement 的 SQL 语句来生成主库数据块的 checksum,把相同的 SQL 语句传 阅读全文
摘要:
1. 题目 读题 考查点 2. 解法 思路 代码逻辑 具体实现 3. 总结 阅读全文
|