- 博客(5)
- 收藏
- 关注
原创 高精度运算——加减乘除法模板
高精度运算也称之为大数运算。即:在变量运算对象的数值范围为任何数据类型所无法容纳的情况下,采用整数数组存储(用字符串表示数字)。高精度运算的难度并不大,考虑不清楚的话列个竖式模拟计算一下即可。
2023-04-22 14:01:18
845
原创 整数、浮点数的二分和基础例题
对于每个查询,返回一个元素 k的起始位置和终止位置(位置从 0 开始计数)。第二行包含 n 个整数(均在 1∼10000范围内),表示完整数组。这里推荐一个相当漂亮的二分模板,建议先看完视频再来看我写的文章。共 q 行,每行包含两个整数,表示所求元素的起始位置和终止位置。给定一个按照升序排列的长度为 n的整数数组,以及 q个查询。接下来 q 行,每行包含一个整数 k,表示一个询问元素。第一行包含整数 n 和 q,表示数组长度和询问个数。共一行,包含一个浮点数,表示问题的解。
2023-04-21 10:46:42
105
1
原创 归并排序_逆序对的数量例题讲解
归并排序是建立在归并操作上的一种有效,稳定的排序算法,该算法是采用(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。归并排序与快速排序的一大区别是,归并排序先分治、再归并,而快速排序是先利用分界点交换数据,再分两段递归。
2023-04-20 21:06:23
143
1
原创 快速排序_第k个数例题讲解
快速排序(Quicksort)是对冒泡排序算法的一种改进,快速排序的思考方式与归并排序类似,都是二分、分治的思想。1、3没有什么难度,重点在于2,如何把数据按照分界点移到左右两边。这里提供一个双指针思想的模板,选取i、j两个指针(i = left - 1 j = right + 1),每次先加减位置再判断大小,所以i和j初始化要比left和right大一点。刚开始q[i]x,i和j不断向中间移动,当条件不满足时退出循环。
2023-04-20 17:12:01
232
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人